cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
armyedsp
Level 4

Unknown error returned from netapi

While inside SdLogonUserInformation, we get 19649 - an unknown error returned from netapi. This happens regardless we enter the credential (dom\user and password) manually, or we attempt to browse the domain list to select a credential. It works fine in the lab and on another client location however. We compared both netapi and netapi32.dll in all instances. They match everywhere.

Since our customer installations are high security and may not have netbios over tcp/ip, computer browser service, associated firewall ports configured etc., we have removed both the Browse... and the New User Information.... buttons in the SdLogonUserInformation dialog screen. It still appears to have some logic to validate the credential because if we type a wrong password, it intelligently validates it and gives appropriate message. We want to disable any CA associated with this dialog (I see ISNetValidateLogonName prototyped in NetApiRT.h). However I do not see any such action in Custom Actions & Sequences. Is there a way to disable verification of the entered credential within this dialog? We have our own verification logic in .NET that works well as we need to validate a host of other permissions required of the passed credentials. Hence the built-in NETAPI calls are redundant for our purposes. Any help will be appreciated.

Thanks.
Labels (1)
0 Kudos
(3) Replies
armyedsp
Level 4

Since customer was affected by the SdLogonUserInformation() error, we had to workaround the problem. I proceeded to create a custom dialog with two text entry fields (similar to SdLogonUserInformation without the Browse ... button). To ensure same look and feel (banner at top etc), I began with the Interior.isd. See attached jpg for my final dialog. Notice at the bottom, {MSSWhiteSe. This should say InstallShield (similar to all the other interior screens in the set up). Any idea how to get the bottom of the interior custom dialog right? Appreciate any help any one can provide.

Thanks.
0 Kudos
joshstechnij
Level 10 Flexeran
Level 10 Flexeran

The dialog branding issue is likely because of importing Interior.isd in a project that uses InstallScript dialogs (Interior.isd is typically only intended for use in Basic MSI projects). For a project that uses InstallScript dialogs, the recommended approach would be to create a new NewScriptBasedDialog by right-clicking All Dialogs in the Dialogs view, then select New Dialog. Or, the SdLogonUserInformation dialog could be edited or cloned.

Regarding your original error, the error itself does not provide any information on why it is occurring. However, if you are attempting to query a domain from a machine that is not actually joined to that domain, that could be a potential cause of the error. Another possible cause can be from having the machine you are testing on located on a different IP subnet than what the domain controller is on.
0 Kudos
armyedsp
Level 4

Thanks Josh. You were right on the money. The branding in the bottom of the dialog was resolved using the NewScriptBasedDialog. That was easy. Thanks again.

I did initially begin with cloning the SdLogonUserInformation, but that resulted in a bland dialog with no banner on top. That is why I switched to interior.

Thanks for the explanation on the error related to NetAPI as well.

I appreciate the help.
0 Kudos