Uninstall via GPO

Diskutiere Uninstall via GPO im Programmierung Forum im Bereich Software Forum; Guten Tag Community, ich habe folgendes Problem. Ich möchte per VBS, welche an einem GPO Container hängt, eine Überprüfung beim Anmelden des...
M

Martin

Threadstarter
Mitglied seit
02.12.2008
Beiträge
493
Standort
nähe Wittenburg
Guten Tag Community,

ich habe folgendes Problem. Ich möchte per VBS, welche an einem GPO Container hängt, eine Überprüfung beim Anmelden des Users an der Domäne machen.

Wenn die Überprüfung erfolgreich ist, soll diese Software deinstalliert werden. Ich habe heute schon soviel mit VBS rumprobiert, hatte aber leider bisher kein Erfolg.

Wir haben schon eine Installationroutine, mit einer if Anweisung, welche das Deinstallieren beinhaltet. Doch diese funktioniert komischerweise nicht.

Hier mal folgender Code.

Code:
Const DeployServer = "\\serv14\SoftwareVerteilung\Office12\DVD"
Const ConfigServer = "\\serv14\SoftwareVerteilung\Office12\Config"

ConfigFile = ConfigServer + "\PrjStd.xml"
        
        Dim ConfigFile
        MSPFile = ConfigServer + "\PrjStd.msp"

        Dim MSPFile
        Set wshShell = Createobject("WScript.shell")
        
                If KeyExists("HKLM\SOFTWARE\" + WOW6432NODE + "Microsoft\Windows\CurrentVersion\Uninstall\PrjPro\UninstallString") Then
            wshShell.run wshShell.RegRead("HKLM\SOFTWARE\" + WOW6432NODE +     "Microsoft\Windows\CurrentVersion\Uninstall\PrjPro\UninstallString") + " /config "+ConfigFile, 1, True
        End if
Das war meine Idee.
Und unsere Installationsroutine.

Code:
Const DeployServer = "\\EMHSERV14\SoftwareVerteilung\Office12\DVD"
Const ConfigServer = "\\EMHSERV14\SoftwareVerteilung\Office12\Config"
UserDomain = "WITTENBURG"

'determine x64
Set wshShell = CreateObject("WScript.Shell")
Dim WOW6432NODE, UninstallString
prgFiles = WSHShell.Environment("PROCESS").Item("ProgramFiles(x86)")
If prgFiles = "" Then WOW6432NODE="\" Else WOW6432NODE="WOW6432NODE\"

Dim ConfigFile
ConfigFile = ConfigServer +"\PrjStd.xml"
Dim MSPFile
MSPFile = ConfigServer +"\PrjStd.msp"

Dim installation_command
installation_command = DeployServer + "\setup.exe /config "+ConfigFile +" /adminfile " + MSPFile

Set wshShell = CreateObject("WScript.Shell")

Dim objNetwork
Set objNetwork = CreateObject("WScript.Network")

Dim objWinntComp
Set objWinntComp = GetObject("WinNT://" & UserDomain & "/" & objNetwork.ComputerName & ",computer")

Dim installGroup, uninstallGroup
installGroup = "SW_Office12_PrjStd_Installation"
uninstallGroup = "SW_Office12_PrjStd_Deinstallation"

If IsMemberOfGroup(UserDomain, objWinntComp, installGroup) Then
      If Not KeyExists("HKLM\SOFTWARE\" + WOW6432NODE + "Microsoft\Windows\CurrentVersion\Uninstall\PrjPro\UninstallString") Then
          wshShell.run installation_command, 1, True
        
      End If
      WScript.Quit
ElseIf IsMemberOfGroup(UserDomain, objWinntComp, uninstallGroup) Then
      If KeyExists("HKLM\SOFTWARE\" + WOW6432NODE + "Microsoft\Windows\CurrentVersion\Uninstall\PrjPro\UninstallString") Then
                wshShell.run wshShell.RegRead("HKLM\SOFTWARE\" + WOW6432NODE + "Microsoft\Windows\CurrentVersion\Uninstall\PrjPro\UninstallString") + " /config "+ConfigFile, 1, True
      End If
      WScript.Quit
End If      

'*****************************************************************************************************************
Function IsMemberOfGroup(strUserDomain, objComp, strGroup) 'the user is a member of a specified group
      IsMemberOfGroup = False
      Dim objGroup
      On Error Resume Next
      Set objGroup = GetObject("WinNT://" & strUserDomain & "/" & strGroup & ",group")
      If Err.Number Then
            IsMemberOfGroup = "Error"
      Else
            IsMemberOfGroup = objGroup.IsMember(objComp.ADsPath & "$")
      End If
End Function

Function KeyExists (key)
Dim key2
On Error Resume Next
key2 = WSHShell.RegRead (key)
If err <> 0 Then
    KeyExists = False
Else
    KeyExists = True
End If
End Function

Ich hoffe ihr könnt mir helfen.

Gruß
Martin
 
Thema:

Uninstall via GPO

Uninstall via GPO - Ähnliche Themen

  • Wie kann ich Revo Uninstaller deinstallieren?

    Wie kann ich Revo Uninstaller deinstallieren?: Wie kann ich Revo Uninstaller deinstallieren?
  • Gutes Script zum Block/uninstall aller "Spy"+Telemetrie patches in Win7

    Gutes Script zum Block/uninstall aller "Spy"+Telemetrie patches in Win7: Erneut angeregt durch die Beschreibung in diesem Artikel: http://www.ghacks.net/2016/01/26/block-all-windows-10-components-on-windows-7-and-8/...
  • GELÖST AMD Driver Uninstaller

    GELÖST AMD Driver Uninstaller: Ja ich weis, man sollte sich vorher überlegen was man tut. Ich hatte Probleme mit meinem GraKa-Treiber und wollte mit den neuen von ATI...
  • AMD Catalyst Uninstall Utility: Säuberungs-Software zum entfernen von Treiberresten bereitet teilweise massive Probleme

    AMD Catalyst Uninstall Utility: Säuberungs-Software zum entfernen von Treiberresten bereitet teilweise massive Probleme: Die AMD Catalyst Uninstall Utility, eine Reinigungs-Software zum restlosen entfernen von Grafikkarten-Treibern, verursacht bei der Anwendung unter...
  • uninstall

    uninstall: Ich habe von Window 7 ein upgrade auf Window 8 ausgeführt und bereue dies bitter. Wie kann man Window 8 wieder deinstallieren?
  • Ähnliche Themen

    Oben