Toon posts:

[XP] Veritas WinInstall LE registry werkt maar 1 keer

Pagina: 1
Acties:

Verwijderd

Topicstarter
Sorry voor de wellicht wat onduidelijke topic titel..

Situatieschets
Ik heb een laptop met hierop Windows XP Professional met SP3.
Omdat deze laptop zowel in een domein komt te zitten en moet kunnen internetten via KPN Mobile (ingebouwd SIM-kaartje) zit ik met het volgende probleem.

Om via het domein op het internet te kunnen wordt gebruik gemaakt van een proxy, welke dus is ingesteld via Internet Explorer > Connections > LAN settings. (Automatically detect settings staat ook aan)

Om te kunnen internetten als de laptop stand-alone draait wordt er gebruik gemaakt van het ingebouwde SIM-kaartje en mag Internet Explorer geen proxy instellingen meer hebben.

De software om mobiel te kunnen internetten heeft gewoon een instelling om proxy te omzeilen, zoals je zou verwachten. De software verwijderd de proxy instellingen.
Maar het software pakketje zet na gebruik niet netjes de oude proxy instellingen terug.

Nu was mijn idee om met Veritas WinInstall LE even 2 MSI-tjes te maken;
- AddProxy (voeg proxy instellingen toe in het registry)
- RemoveProxy (precies andersom)

Maar dit lijkt maar 1x te werken (AddProxy.msi). Als de after-snapshot net is gemaakt, dan werkt het als een zonnetje.
Maak ik vervolgens de RemoveProxy.msi dan werkt deze ook 1x.

Vervolgens werken ze geen van beide meer.

Vraag
Mijn vraag is; Hoe los ik dit nou op? Zie ik iets over het hoofd? Is Internet Explorer het probleem? :?

Ik heb wel vaker met deze tool MSI-pakketjes gemaakt. En ook net op GoT gezocht, om maar even aan te geven dat ik al wel wat zoekwerk heb verricht en gewoon ervaring heb met dit pakket.

Verwijderd

Kan ook zo :)..
Onderstaande script werkt bij ons domein zonder problemen.
Schakeld bij uitvoering proxy uit als deze aan staat en weer in als deze uit staat.

Omdat meestal de proxy gegevens blijven staan bij de IE instellingen heb ik deze strings eruit gehaald en alleen de proxy enable of disable actief gehouden.

'strProxyServer = "isa.proxy.nl:8080"
'strProxyOveride = "*.city.XXX"

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
Const HKCU=&H80000001 'HKEY_CURRENT_USER
Const HKLM=&H80000002 'HKEY_LOCAL_MACHINE

Const REG_SZ=1
Const REG_EXPAND_SZ=2
Const REG_BINARY=3
Const REG_DWORD=4
Const REG_MULTI_SZ=7

Const HKCU_IE_PROXY = "Software\Microsoft\Windows\CurrentVersion\Internet Settings"

Set oReg=GetObject("winmgmts:!root/default:StdRegProv")

Main

Sub Main()

' If Proxy is set then turn it off
If GetValue(HKCU,HKCU_IE_PROXY,"ProxyEnable",REG_DWORD) = 1 AND Len(GetValue(HKCU,HKCU_IE_PROXY,"ProxyServer",REG_SZ)) > 0 Then
CreateValue HKCU,HKCU_IE_PROXY,"ProxyEnable",0,REG_DWORD
wscript.echo "Proxy Disabled"
Else
' If Proxy is not set then turn it on

'strProxyServer = "isa.proxy.nl:8080"
'strProxyOveride = "*.city.XXX"

'CreateValue HKCU,HKCU_IE_PROXY,"ProxyServer",strProxyServer,REG_SZ
CreateValue HKCU,HKCU_IE_PROXY,"ProxyEnable",1,REG_DWORD
'CreateValue HKCU,HKCU_IE_PROXY,"ProxyOverride",strProxyOveride,REG_SZ
wscript.echo "Proxy Enabled" & vbcrlf & "(" & strProxyServer & ")"
End If

End Sub

Function CreateValue(Key,SubKey,ValueName,Value,KeyType)
Select Case KeyType
Case REG_SZ
CreateValue = oReg.SetStringValue(Key,SubKey,ValueName,Value)
Case REG_EXPAND_SZ
CreateValue = oReg.SetExpandedStringValue(Key,SubKey,ValueName,Value)
Case REG_BINARY
CreateValue = oReg.SetBinaryValue(Key,SubKey,ValueName,Value)
Case REG_DWORD
CreateValue = oReg.SetDWORDValue(Key,SubKey,ValueName,Value)
Case REG_MULTI_SZ
CreateValue = oReg.SetMultiStringValue(Key,SubKey,ValueName,Value)
End Select
End Function

Function DeleteValue(Key, SubKey, ValueName)
DeleteValue = oReg.DeleteValue(Key,SubKey,ValueName)
End Function

Function GetValue(Key, SubKey, ValueName, KeyType)

Dim Ret

Select Case KeyType
Case REG_SZ
oReg.GetStringValue Key, SubKey, ValueName, Value
Ret = Value
Case REG_EXPAND_SZ
oReg.GetExpandedStringValue Key, SubKey, ValueName, Value
Ret = Value
Case REG_BINARY
oReg.GetBinaryValue Key, SubKey, ValueName, Value
Ret = Value
Case REG_DWORD
oReg.GetDWORDValue Key, SubKey, ValueName, Value
Ret = Value
Case REG_MULTI_SZ
oReg.GetMultiStringValue Key, SubKey, ValueName, Value
Ret = Value
End Select

GetValue = Ret
End Function

Verwijderd

Topicstarter
Update

De reden dat het alleen de eerste keer werkt is omdat het programma dan geinstalleerd wordt.
De daarop volgende acties is er dus wel degelijk iets anders. Als ik het programma weer de-installeer werkt het de keer daarop wel weer eenmalig.

Hoe zorg ik ervoor dat het MSI-tje echt alleen de registry settings zet en verder niks?

code:
1
2
3
4
REGEDIT

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]
"ProxyEnable"=dword:00000001

  • Pavla
  • Registratie: Juni 2004
  • Laatst online: 21:40
Dit kan veel eenvoudiger met IE7pro, met een sneltoets kan je dan zo toggelen tussen proxy aan of uit.
http://www.ie7pro.com/

succes ;)

het net even gekeken, met ctrl-f9 toggle je de proxy tussen aan en uit

[ Voor 21% gewijzigd door Pavla op 19-12-2008 11:57 ]

Trots lid van [DPC] Team Boonanza @ SoB - Bezoek pwnshop.nl!


  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

Verwijderd schreef op vrijdag 19 december 2008 @ 10:16:
Nu was mijn idee om met Veritas WinInstall LE even 2 MSI-tjes te maken;
- AddProxy (voeg proxy instellingen toe in het registry)
- RemoveProxy (precies andersom)

Maar dit lijkt maar 1x te werken (AddProxy.msi). Als de after-snapshot net is gemaakt, dan werkt het als een zonnetje.
Maak ik vervolgens de RemoveProxy.msi dan werkt deze ook 1x.

Vervolgens werken ze geen van beide meer.

Vraag
Mijn vraag is; Hoe los ik dit nou op? Zie ik iets over het hoofd? Is Internet Explorer het probleem? :?
Je maakt een MSI installer package die iets installeert, en een die iets de-installeert.
Beiden staan daarna in het systeem geregistreerd als aanwezig en werken precies zoals bedoeld.

Nou kan het aan mij liggen, wellicht mag je onder je eigen useraccount geen scripts rechtstreeks runnen - dat kan natuurlijk - maar heb je ook al geprobeerd met een Repair van de Add.MSI de door het andere package verwijderde keys weer te laten terugzetten? :)

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


  • sanfranjake
  • Registratie: April 2003
  • Niet online

sanfranjake

Computers can do that?

(overleden)
Veritas is toch al behoorlijk lang geleden opgekocht door Symantec, en WinInstall werd in 2002, nog daarvoor verkocht aan OnDemand. Weet je zeker dat de versie welke jij gebruikt nog wel volledig compatibel is met met name XPSP2/de huidige Windows Installer?
edit:
Gebruik je misschien de versie die op de Windows 2000 cd werd meegeleverd?

[ Voor 16% gewijzigd door sanfranjake op 19-12-2008 21:40 ]

Mijn spoorwegfotografie
Somda - Voor en door treinenspotters

Pagina: 1