I was able to run the script from command line without any problem, so I think the argument to GetObject( "LDAP: backslash backslash RootDSE") should be correct, just not sure what the installer engine accepts.
I am running this CA from UI after the user enter username on screen. I have a pushbutton ("Check user exists") that invokes this CA. I am not a vbscript developer so I could be wrong anytime. I have Phil's book on Windows installer right in front of me...very good book for beginners. Sadly, it does not have vbscript examples :) thanks again.. On Thu, Dec 16, 2010 at 4:20 PM, Edwin G. Castro [via Windows Installer XML (WiX) toolset] <ml-node+5843532-183584856-306...@n2.nabble.com<ml-node%2b5843532-183584856-306...@n2.nabble.com> > wrote: > You should really remove the following line: > > Set shell = CreateObject() > > It used to be > > Set shell = WScript.CreateObject("WScript.Shell") > > Another question: Is this really valid? > > Set objRootDSE = GetObject("LDAP://RootDSE <ldap://RootDSE/>") > > I would expect a PROGID as the parameter for GetObject(). > > Remember I'm not a vbscript wizard so I might be worrying about nothing. > > Edwin G. Castro > Software Developer - Staff > Electronic Banking Services > Fiserv > Office: 503-746-0643 > Fax: 503-617-0291 > www.fiserv.com > Please consider the environment before printing this e-mail > > > -----Original Message----- > > From: sangeeta1 [mailto:[hidden > > email]<http://user/SendEmail.jtp?type=node&node=5843532&i=0>] > > > Sent: Thursday, December 16, 2010 12:42 PM > > To: [hidden email]<http://user/SendEmail.jtp?type=node&node=5843532&i=1> > > Subject: Re: [WiX-users] Running vbscript in customaction > > > > > > Hi Phil, > > > > The custom action function to simply read the Domain name also fails with > > > return code 3 > > > > Set shell = CreateObject() > > Set objRootDSE = GetObject("LDAP://RootDSE <ldap://RootDSE/>") > > > > > > I am sure I am missing a lot here...looking for some directions on > getting it > > right. > > > > thanks! > > On Thu, Dec 16, 2010 at 1:25 PM, snm snm <[hidden > email]<http://user/SendEmail.jtp?type=node&node=5843532&i=2>> > wrote: > > > > > > > > Thanks for the correction. After removing the wscript ref, I am still > > > seeing the same problem. > > > I initially thought maybe reading property from session object is > > > throwing the error, so i hardcoded a value in the variable and tried > > > it again, but it still throws the same error. > > > > > > Is there any way I can log messages - similar to session.Log() in c# > > > customactions? > > > > > > > > > > > > ----------------- code ---------- > > > > > > Function CheckUserExists() > > > > > > 'strUserName = Session.Property("IAMUSERNAME") strUserName = > > "iaadmin" > > > ' Determine DNS domain name. > > > Set objRootDSE = GetObject("ldap://RootDSE/ LDAP://RootDSE") > > > strDNSDomain = objRootDSE.Get("defaultNamingContext") > > > > > > Set objCommand = CreateObject("ADODB.Command") Set objConnection > > = > > > CreateObject("ADODB.Connection") objConnection.Provider = > > > "ADsDSOObject" > > > objConnection.Open "Active Directory Provider" > > > objCommand.ActiveConnection = objConnection > > objCommand.CommandText = _ > > > "<LDAP://" & strDNSDomain & ">;(&(objectCategory=User)" & _ > > > "(samAccountName=" & strUserName & "));samAccountName;subtree" > > > > > > Set objRecordSet = objCommand.Execute > > > If objRecordset.RecordCount = 0 Then > > > 'WScript.StdOut.WriteLine "sAMAccountName: " & strUserName & " does > > > not exist." > > > Session.Property("USEREXISTS") = 1 Else > > > 'WScript.StdOut.WriteLine strUserName & " exists." > > > CheckUserExists = msiDoActionStatusSuccess End If > > > objConnection.Close End Function > > > > > > --------- Log ---------------- > > > > > > Action 11:42:48: CheckUserExists. > > > Action start 11:42:48: CheckUserExists. > > > MSI (c) (E8:94) [11:42:48:993]: Cloaking enabled. > > > MSI (c) (E8:94) [11:42:48:993]: Attempting to enable all disabled > > > privileges before calling Install on Server MSI (c) (E8:94) > > > [11:42:48:993]: Connected to service for CA interface. > > > Action ended 11:42:49: CheckUserExists. Return value 3. > > > DEBUG: Error 2896: Executing action CheckUserExists failed. > > > The installer has encountered an unexpected error installing this > package. > > > This may indicate a problem with this package. The error code is 2896. > > > The arguments are: CheckUserExists, , Action ended 11:42:49: > > > WelcomeDlg. Return value 3. > > > > > > > > > On Wed, Dec 15, 2010 at 11:11 PM, Wilson, Phil-2 [via Windows > > > Installer XML (WiX) toolset] > > > <[hidden email] <http://user/SendEmail.jtp?type=node&node=5843532&i=3><ml- > > > node%2B5839954-8994 > > > [hidden email] <http://user/SendEmail.jtp?type=node&node=5843532&i=4>> > > > > > wrote: > > > > > >> There is no WScript object in Windows Installer. As its name implies, > > >> the Wscript object is supplied by the Windows Script Host > > >> environment, and you're not running in there. Just use CreateObject(). > > > >> > > >> Phil Wilson > > >> > > >> -----Original Message----- > > >> From: sangeeta1 [mailto:[hidden > > >> email]<http://user/SendEmail.jtp?type=node&node=5839954&i=0>] > > >> > > >> Sent: Wednesday, December 15, 2010 9:22 AM > > >> To: [hidden email] > > >> <http://user/SendEmail.jtp?type=node&node=5839954&i=1> > > >> Subject: [WiX-users] Running vbscript in customaction > > >> > > >> > > >> Hi, > > >> > > >> > > >> I have a vbscript to validate the user in AD and I am having trouble > > >> running it in the custom Action. Can someone point out mistakes in > > >> implementing the custom action. > > >> I am not a vbscript expert here so please pardon my ignorance. > > >> > > >> log > > >> ---- > > >> > > >> Action 11:42:48: CheckUserExists. > > >> Action start 11:42:48: CheckUserExists. > > >> MSI (c) (E8:94) [11:42:48:993]: Cloaking enabled. > > >> MSI (c) (E8:94) [11:42:48:993]: Attempting to enable all disabled > > >> privileges before calling Install on Server MSI (c) (E8:94) > > >> [11:42:48:993]: Connected to service for CA interface. > > >> Action ended 11:42:49: CheckUserExists. Return value 3. > > >> DEBUG: Error 2896: Executing action CheckUserExists failed. > > >> The installer has encountered an unexpected error installing this > package. > > >> > > >> This may indicate a problem with this package. The error code is > > >> 2896. The > > >> > > >> arguments are: CheckUserExists, , > > >> Action ended 11:42:49: WelcomeDlg. Return value 3. > > >> > > >> Code > > >> -------- > > >> > > >> <CustomAction Id="CheckUserExists" BinaryKey="CheckUserExistsKey" > > >> VBScriptCall="CheckUserExists" Execute="immediate"></CustomAction> > > >> <Binary Id="CheckUserExistsKey" SourceFile="scripts\ADUserSearch.vbs" > > >> ></Binary> > > >> > > >> vbscript > > >> ---------- > > >> > > >> Function CheckUserExists > > >> Set shell = WScript.CreateObject("WScript.Shell") > > >> strUserName = Session.Property("IAMUSERNAME") dtStart = > > >> TimeValue(Now()) ' Determine DNS domain name. > > >> Set objRootDSE = GetObject(" ldap://RootDSE/ LDAP://RootDSE") > > >> strDNSDomain = objRootDSE.Get("defaultNamingContext") > > >> Set objCommand = CreateObject("ADODB.Command") Set > > objConnection = > > >> CreateObject("ADODB.Connection") objConnection.Provider = > > >> "ADsDSOObject" > > >> objConnection.Open "Active Directory Provider" > > >> objCommand.ActiveConnection = objConnection > > objCommand.CommandText = > > >> _ "<LDAP://" & strDNSDomain & ">;(&(objectCategory=User)" & _ > > >> "(samAccountName=" & strUserName & "));samAccountName;subtree" > > >> > > >> Set objRecordSet = objCommand.Execute If objRecordset.RecordCount = > > 0 > > >> Then 'WScript.StdOut.WriteLine "sAMAccountName: " & strUserName & > > " > > >> does not exist." > > >> Session.Property("USEREXISTS") = 1 Else > > >> 'WScript.StdOut.WriteLine strUserName & " exists." > > >> CheckUserExists = msiDoActionStatusSuccess End If > > >> objConnection.Close End > > >> > > >> > > > > -- > > View this message in context: http://windows-installer-xml-wix- > > toolset.687559.n2.nabble.com/Running-vbscript-in-customaction- > > tp5838178p5843379.html > > Sent from the wix-users mailing list archive at Nabble.com. > > > ------------------------------------------------------------------------------ > > > Lotusphere 2011 > > Register now for Lotusphere 2011 and learn how to connect the dots, take > > your collaborative environment to the next level, and enter the era of > Social > > Business. > > http://p.sf.net/sfu/lotusphere-d2d > > _______________________________________________ > > WiX-users mailing list > > [hidden email] <http://user/SendEmail.jtp?type=node&node=5843532&i=5> > > https://lists.sourceforge.net/lists/listinfo/wix-users > ------------------------------------------------------------------------------ > > Lotusphere 2011 > Register now for Lotusphere 2011 and learn how > to connect the dots, take your collaborative environment > to the next level, and enter the era of Social Business. > http://p.sf.net/sfu/lotusphere-d2d > _______________________________________________ > WiX-users mailing list > [hidden email] <http://user/SendEmail.jtp?type=node&node=5843532&i=6> > https://lists.sourceforge.net/lists/listinfo/wix-users > > > ------------------------------ > View message @ > http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Running-vbscript-in-customaction-tp5838178p5843532.html > > To start a new topic under wix-users, email > ml-node+687560-220571316-306...@n2.nabble.com<ml-node%2b687560-220571316-306...@n2.nabble.com> > To unsubscribe from wix-users, click > here<http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=687560&code=c25tc25tMTBAZ21haWwuY29tfDY4NzU2MHwtODkyOTExNTcy>. > > -- View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Running-vbscript-in-customaction-tp5838178p5843558.html Sent from the wix-users mailing list archive at Nabble.com. ------------------------------------------------------------------------------ Lotusphere 2011 Register now for Lotusphere 2011 and learn how to connect the dots, take your collaborative environment to the next level, and enter the era of Social Business. http://p.sf.net/sfu/lotusphere-d2d _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users