Vai al contenuto
PLC Forum

Partecipa anche tu alla Live su Youtube martedì 28/01/2025 per festeggiare i 24 anni di PLC Forum

Per ulteriori informazioni leggi questa discussione: https://www.plcforum.it/f/topic/326513-28012025




Codice Script


Messaggi consigliati

Inserito:

Aiuto

Qualcuna sa come scrivere uno script che mi dia che indirizzo ip ha il mio pannello ...

Sto utilizzando Wincc Flexixible 2008 il pannello è un mp377

Grazie dell'aiuto

Andrea


Inserita:

incuriosito dalla tua richiesta mi sono cercato in rete qualcosa e ho provato questo codice che copia tutte le informazioni di rete nel file C:\Storage Card\address.txt precedentemente creato vuoto.

------------------ script da PC -------------------------------

'Declare Variables

Dim j, NIC1, Nic, StrNic, lngCount, StrIP, i ,objNet,objHost, pingo, fso, fs, blank

'If something fails, move on

On Error Resume Next

'Get the Computer's network name

Set objNet=CreateObject("wscript.Network")

objHost=objNet.ComputerName

pingo = "Analysis of " & objHost & "."

'Get a connection to the WMI NetAdapteConfig object

Set NIC1 = GetObject("winmgmts:").InstancesOf("Win32_NetworkAdapterConfiguration")

'For Each of the NICs in the connection

For Each Nic In NIC1

'Get the Adapter Description

StrNic = Nic.Description

'If IP is enabled on the NIC then let's find out about the NIC

If Nic.IPEnabled Then

lngCount=UBound(Nic.IPAddress)

For i=0 To lngCount

If i >= 0 Then

pingo = pingo & "===================================================" & _

vbNewLine

pingo = pingo & StrNic & vbNewLine

StrIP = vbTab & Nic.IPAddress(i)

If StrIP <> "" Then

pingo = pingo & vbTab & "IP Address = " & _

StrIP & vbNewLine

pingo = pingo & vbTab & "MAC Address = " & _

Nic.MACAddress & vbNewLine

pingo = pingo & vbTab & "NIC Service (Short) Name = " & _

Nic.ServiceName & vbNewLine

pingo = pingo & vbTab & "IP Subnet(s): "

For j = 0 To UBound(Nic.IPSubnet)

pingo = pingo & vbTab & vbTab & Nic.IPSubnet(j) & vbNewLine

Next

pingo = pingo & vbTab & "Internet Database Files Path = " & _

Nic.DatabasePath & vbNewLine

pingo = pingo & vbTab & "Dead Gateway Detection = " & _

Nic.DeadGWDetectEnabled & vbNewLine

pingo = pingo & vbTab & "IP Gateway(s): "

For j=0 To UBound(Nic.DefaultIPGateway)

pingo = pingo & vbTab & vbTab & Nic.DefaultIPGateway(j)& vbNewLine

Next

If Nic.DHCPEnabled Then

pingo = pingo & vbTab & "DHCP Assigned IP address = " & _

Nic.DHCPEnabled & vbNewLine

pingo = pingo & vbTab & "DHCP Server = " & _

Nic.DHCPServer & vbNewLine

End If

pingo = pingo & vbTab & "DNS for WINS Resolution Enabled = " & _

Nic.DNSEnabledforWINSResolution & vbNewLine

pingo = pingo & vbTab & "DNS Host Name = " & _

Nic.DNSHostName & vbNewLine

pingo = pingo & vbTab & "DNS Servers:"

For j=0 To UBound(Nic.DNSServerSearchOrder)

pingo = pingo & vbTab & vbTab & Nic.DNSServerSearchOrder(j)& vbNewLine

Next

pingo = pingo & vbTab & "IP Port Filtering Enabled = " & _

Nic.IPFilterSecurityEnabled & vbNewLine

If Nic.IPFilterSecurityEnabled Then

pingo = pingo & vbTab & "IP Filtering Enabled."

If Nic.IPSecPermitIPProtocols <> 0 Then

For j=0 To UBound(Nic.IPSecPermitIPProtocols) & vbNewLine

pingo = pingo & vbTab & vbTab & "Protocol: " & _

Nic.IPSecPermitIPProtocols(j)& vbNewLine

Next

Else

pingo = pingo & vbTab & vbTab & "No Protocols Filtered" & vbNewLine

End If

If Nic.IPSecPermitTCPPorts <> 0 Then

For j=0 To UBound(Nic.IPSecPermitTCPPorts)

pingo = pingo & vbTab & vbTab & "TCP Port: " & _

Nic.IPSecPermitTCPPorts(j)& vbNewLine

Next

Else

pingo = pingo & vbTab & vbTab & "No TCP Ports Filtered" & vbNewLine

End If

If Nic.IPSecPermitUDPPorts <> 0 Then

For j=0 To UBound(Nic.IPSecPermitUDPPorts)

pingo = pingo & vbTab & vbTab & "UDP Port: " & _

Nic.IPSecPermitUDPPorts(j) & vbNewLine

Next

Else

pingo = pingo & vbTab & vbTab & "No UDP Ports Filtered" & vbNewLine

End If

End If

pingo = pingo & vbTab & "LMHOSTS Lookup Enabled = " & _

Nic.WINSEnableLMHostsLookup & vbNewLine

pingo = pingo & vbTab & "WINS Lookup File = " & _

Nic.WINSHostLookupFile & vbNewLine

pingo = pingo & vbTab & "Primary WINS Server = " & _

Nic.WINSPrimaryServer & vbNewLine

pingo = pingo & vbTab & "Secondary WINS Server = " & _

Nic.WINSSecondaryServer & vbNewLine

pingo = pingo & vbTab & "WINS Scope ID = " & Nic.WINSScopeID & vbNewLine

End If

End If

Next

End If

Next

Set fso = CreateObject("Scripting.FileSystemObject")

Set fs = fso.OpenTextFile ("C:\Storage Card\address.txt",8) 'file open (command=8) ascii default

blank=" "

fs.WriteLine (pingo): 'copy the entire information

fs.Close 'file close

------------------ fine script da PC -------------------------------

purtroppo il sistema operativo sul pannello MP377 richiede una sintassi leggermente diversa che non riesco a debuggare in quanto non dispongo del pannello.

Prova a vedere dove si pianta, comunque ti incollo una parte di script che girava su un pannello, facendo un mix fra lo script di prima e questo dovresti riuscire a fare ciò che vuoi te.

------------------ script da pannello -------------------------------

Dim fs, a, f, operatore, blank, trigger 'dichiara le variabili

trigger=0

archivio=trigger 'azzera il trigger di memorizzazione report

operatore = nome_login 'aggiorna il nome dell'operatore

'costruzione dell'header se il file non esiste

Set fs = CreateObject("FileCtl.File")'dichiara le proprietà del file

Dim esiste 'variabile booleana

'verifica lunghezza file, se=0 manca il file, quindi prepara header

fs.Open "\storage card\production.xls",8

f = fs.lof

fs.Close

If (f = 0) Then Call PtScp.Header()'prepara header

fs.Open "\storage card\production.xls",8 'apre il file e scrive alla fine file (comando=8) ascii default

blank=" "

fs.WriteFields( CStr(Date)+ ";" + CStr(Time) + ";" + operatore + ";" + CStr(PtVar."280_000") + ";" + CStr(PtVar.NOME_PROG)+ ";" + CStr(PtVar."280_002") + ";"+ CStr(PtVar."280_004") + ";" + CStr(PtVar."280_006") + ";" + CStr(PtVar."280_100")):

fs.Close 'chiudi il file

Call PtFct.Visualizza_testo_segnalaz_sistema("Prodution.xls successfully updated.")

------------------ fine script da pannello -------------------------------

pigroplc

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...