ich verwende im Moment folgenden Code:
Delphi-Quellcode:
var
UserName: array [0..CRED_MAX_USERNAME_LENGTH] of Char;
i: Integer;
...
ZeroMemory(@UserName, SizeOf(UserName));
for i:=0 to length(preuser) do UserName[i] := preuser[i+1]; //preUser ist ein String mit dem Usernamen der bereits im Dialog angezeigt werden soll
errcode := CredUIPromptForCredentials(@Info, 'Foo', nil, 0,
@UserName, CRED_MAX_USERNAME_LENGTH+1,
Password, CREDUI_MAX_PASSWORD_LENGTH+1,
Save, Flag);
for i:=0 to CRED_MAX_USERNAME_LENGTH do if Username[i] <> #0 then struser := struser + Username[i]; //struser ist ein string der den usernamen _nach_ dem anzeigen des dialogs enthalten soll
damit habe ich oben erwähntes problemn.
wie meinst du denn das mit dem WideString? CredUIPromptForCredentials verlangt doch als Usernamen einen PChar...