Instead of writing your own, use a CA from http://msiext.codeplex.com.
CheckCredentials: http://code.dblock.org/Source/msiext/1.2/Docs/_check_credentials_8h.html#a1db77a38daed9d05dfaa2bac173ec550 GetUserInfo: http://code.dblock.org/Source/msiext/1.2/Docs/_user_info_8h.html#aba0b3481e2f5612373289a8fd4299f48 Etc. dB. @ dblock.org Moscow|Geneva|Seattle|New York -----Original Message----- From: sangeeta1 [mailto:snmsn...@gmail.com] Sent: Wednesday, December 15, 2010 12:57 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] Check if user exists in UI 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("<a href="ldap://RootDSE/" target="_top" rel="nofollow" link="external">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/Check-if-user-exists-in-UI-tp5829564p5838218.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 ------------------------------------------------------------------------------ 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