set shellApp = createobject("shell.application") set oControlPanel = shellApp.Namespace(ssfCONTROLS)
set oNetConnections = nothing for each folderitem in oControlPanel.items if folderitem.name = "Network Connections" then set oNetConnections = folderitem.getfolder: exit for end if next
if oNetConnections is nothing then msgbox "Couldn't find 'Network Connections' folder" wscript.quit end if
set oLanConnection = nothing for each folderitem in oNetConnections.items if lcase(folderitem.name) = lcase(sConnectionName) then set oLanConnection = folderitem: exit for end if next
if oLanConnection is nothing then msgbox "Couldn't find '" & sConnectionName & "' item" wscript.quit end if
bEnabled = true set oEnableVerb = nothing set oDisableVerb = nothing s = "Verbs: " & vbcrlf for each verb in oLanConnection.verbs s = s & vbcrlf & verb.name if verb.name = sEnableVerb then set oEnableVerb = verb bEnabled = false end if if verb.name = sDisableVerb then set oDisableVerb = verb end if next
'debugging displays left just in case... ' 'msgbox s ': wscript.quit 'msgbox "Enabled: " & bEnabled ': wscript.quit
'not sure why, but invokeverb always seemed to work 'for enable but not disable. ' 'saving a reference to the appropriate verb object 'and calling the DoIt method always seems to work. ' if bEnabled then ' oLanConnection.invokeverb sDisableVerb oDisableVerb.DoIt else ' oLanConnection.invokeverb sEnableVerb oEnableVerb.DoIt end if
'adjust the sleep duration below as needed... ' 'if you let the oLanConnection go out of scope 'and be destroyed too soon, the action of the verb 'may not take... ' wscript.sleep 1000
hvis du kan omsætte det til danske forhold ville det være helt perfekt..
Jeg har prøvet med :
'======== ToggleLanConnection.vbs '========
Const ssfCONTROLS = 3
sConnectionName = "Trådløst netværk"
sEnableVerb = "En&able" sDisableVerb = "Disa&ble"
set shellApp = createobject("shell.application") set oControlPanel = shellApp.Namespace(ssfCONTROLS)
set oNetConnections = nothing for each folderitem in oControlPanel.items if folderitem.name = "Netværksforbindelser" then set oNetConnections = folderitem.getfolder: exit for end if next
if oNetConnections is nothing then msgbox "Couldn't find 'Network Connections' folder" wscript.quit end if
set oLanConnection = nothing for each folderitem in oNetConnections.items if lcase(folderitem.name) = lcase(sConnectionName) then set oLanConnection = folderitem: exit for end if next
if oLanConnection is nothing then msgbox "Couldn't find '" & sConnectionName & "' item" wscript.quit end if
bEnabled = true set oEnableVerb = nothing set oDisableVerb = nothing s = "Verbs: " & vbcrlf for each verb in oLanConnection.verbs s = s & vbcrlf & verb.name if verb.name = sEnableVerb then set oEnableVerb = verb bEnabled = false end if if verb.name = sDisableVerb then set oDisableVerb = verb end if next
'debugging displays left just in case... ' 'msgbox s ': wscript.quit 'msgbox "Enabled: " & bEnabled ': wscript.quit
'not sure why, but invokeverb always seemed to work 'for enable but not disable. ' 'saving a reference to the appropriate verb object 'and calling the DoIt method always seems to work. ' if bEnabled then ' oLanConnection.invokeverb sDisableVerb oDisableVerb.DoIt else ' oLanConnection.invokeverb sEnableVerb oEnableVerb.DoIt end if
'adjust the sleep duration below as needed... ' 'if you let the oLanConnection go out of scope 'and be destroyed too soon, the action of the verb 'may not take... ' wscript.sleep 1000
men jeg får "couldn't find 'trådløst netværk' item"...
for each folderitem in oNetConnections.items if lcase(folderitem.name) = lcase(sConnectionName) then set oLanConnection = folderitem: exit for end if next
til
for each folderitem in oNetConnections.items WScript.Echo lcase(folderitem.name) &" = " & lcase(sConnectionName) if lcase(folderitem.name) = lcase(sConnectionName) then set oLanConnection = folderitem: exit for end if next
Så har du selv mulighed for at sammeligne og se hvad problemet er. Jeg har desværre ikke en dansk udgang af XP, så jeg kan ikke rigtigt hjælpe.
for each folderitem in oNetConnections.items if lcase(folderitem.name) = lcase(sConnectionName) then set oLanConnection = folderitem: exit for end if next
til
for each folderitem in oNetConnections.items if InStr(1, lcase(folderitem.name), lcase(sConnectionName), vbTextCompare) > 0 then set oLanConnection = folderitem: exit for end if Next
for each verb in oLanConnection.verbs s = s & vbcrlf & verb.name if verb.name = sEnableVerb then set oEnableVerb = verb bEnabled = false end if if verb.name = sDisableVerb then set oDisableVerb = verb end if next
til
for each verb in oLanConnection.verbs WScript.Echo verb s = s & vbcrlf & verb.name if verb.name = sEnableVerb then set oEnableVerb = verb bEnabled = false end if if verb.name = sDisableVerb then set oDisableVerb = verb end if next
Har fundet problemet .. Det er det latterlige ved Windows. De tror at sproget skal rette helt ind i koden og på folder navne osv .. Idioter lær dog at bruge Language Schemes. I har tyv stjålat alt andet fra Linux og Unix .. Skulle i ikkel ige få taget jeg samme og så nakket det også..
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.