Everyone: anybody have a workaround? Phil: can you elaborate a bit more on this "WMI Reloaded" script? What is psexec? What does this have to do with anybody's advertisement? Thanks, Siegfried
-----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Christopher Painter Sent: Friday, May 30, 2008 12:30 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] WMI/ADSI VBS scripts fail in installer only: They work fine from cscript on the command line! When I was at Continental I saw plenty of cases where either WMI or the SMS Advanced Client would just become corrupt, crap out and need to be repaired. One of the guys on our team had actually written a script called WMI Reloaded ( he was a huge Matrix fan ) that would bulldoze the entire thing and rebuild it all. We typically we fire this out via psexec and then run our advertisement again. So naturally I'm very reluctant to take this type of dependency unless in a very controlled environment. "Wilson, Phil" <[EMAIL PROTECTED]> wrote: I've come across instances, seemingly random, where WMI scripts fail inside Windows Installer. I've always assumed it's got something to do with credentials and impersonation. When you're running a custom action you may already be impersonated on an msiexec process via RPC. Then when you get into WMI it's another out-of-process call and I believe WMI tries to do more impersonation, and you can't transfer impersonated credentials. Phil Wilson -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Siegfried Heintze (Aditi) Sent: Friday, May 30, 2008 12:08 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] WMI/ADSI VBS scripts fail in installer only: They work fine from cscript on the command line! I have the script below stored in a file called IISScripts.vbs. I have this in my wxs file: NOT Installed I get these error messages: ((ERROR)) Line 133 GetObject("winmgmts:{authenticationLevel-pktPrivacy}\\.\root\microsoftiisv2) ((ERROR)) line 135 Set colItems ... (see source code below) Hmmm... I was getting an error indicating that objWMIService was undefined. I cannot figure out what changed to cause these different error messages. Well, anyway: here is the kicker: this script works fine when I call it from CMD.EXE with the cscript.exe command. Why do these calls only fail when I call them from the installer? Thanks, Siegfried 16 Option Explicit 17 18 Const FAILED = 3 19 Const SUCCEEDED = 0 20 Dim notInWMI 21 notInWMI = False 22 23 '------------------------------------------------------------------------------ 24 ' Logs information to calling MSI 25 '------------------------------------------------------------------------------ 26 Sub LogInfo(msg) 27 If notInWMI Then 28 WScript.Echo msg 29 Else 30 Dim rec 31 Set rec = Session.Installer.CreateRecord(1) 32 rec.StringData(0) = "((INFO)) " & msg 33 Session.Message &H04000000, rec 34 End If 35 End Sub 36 51 Function ChkError(msg) 52 if Err and Err.number <> 0 then 53 LogError msg & " {" & Err.number & ": " & Err.Description & "}" 54 ChkError = FAILED 55 Exit Function 56 end if 57 ChkError = SUCCEEDED 58 End Function 59 60 116 '------------------------------------------------------------------------------ 117 ' Sets the the IIS log file 118 '------------------------------------------------------------------------------ 119 Function SetIISLog() 120 On Error Resume Next 121 dim objWMIService 122 dim colItems 123 dim strComputer 124 LogInfo "line 124 Beginning SetIISLog" 125 SetIISLog = FAILED 126 'Instance = Session.Properties("SITEURL") 127 Instance = "Default Web Site" 128 ' Verify we can connect to IIS on specified Server 129 LogInfo "Line 129 " 130 strComputer = "." 131 LogInfo "Line 131" 132 Set objWMIService = GetObject("winmgmts:{authenticationLevel=pktPrivacy}\\" & strComputer & "\root\microsoftiisv2") 133 ChkError("Line 133 GetObject(""winmgmts:{authenticationLevel=pktPrivacy}\\" & strComputer & "\root\microsoftiisv2"")") 134 Set colItems = objWMIService.ExecQuery ("Select * from IIsWebServiceSetting") 135 ChkError("line 135 Set colItems = objWMIService.ExecQuery (""Select * from IIsWebServiceSetting"")") 136 For Each objItem in colItems 137 LogInfo "Line 137 Log File Directory: " & objItem.LogFileDirectory 138 'LogInfo "Line 138 Log File Local Time Rollover: " & objItem.LogFileLocaltimeRollover 139 'LogInfo "Line 139 Log File Period: " & objItem.LogFilePeriod 140 'LogInfo "Line 140 Log File Truncate Size: " & objItem.LogFileTruncateSize 141 if objItem.LogFileDirectory = "C:\WINDOWS\system32\LogFiles" then 142 objItem.LogFileDirectory = "c:\Documents and Settings\a-siehei\My Documents\dev\bugs\2803" 143 else 144 objItem.LogFileDirectory = "C:\WINDOWS\system32\LogFiles" 145 end if 146 objItem.Put_ 147 LogInfo "Line 147 Log File Directory: " & objItem.LogFileDirectory 148 Next 149 150 SetIISLog = SUCCEEDED 151 LogInfo "Line 151 Ending SetIISLog retval=" & SetIISLog 152 End Function ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users Christopher Painter, Author of Deployment Engineering Blog Have a hot tip, know a secret or read a really good thread that deserves attention? E-Mail Me ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users