AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

problem mit createprocesswithlogonW

Ein Thema von 5etH · begonnen am 20. Okt 2008 · letzter Beitrag vom 26. Okt 2008
Antwort Antwort
Benutzerbild von 5etH
5etH

Registriert seit: 4. Mär 2008
Ort: Giessen
217 Beiträge
 
Delphi 2007 Professional
 
#1

Re: problem mit createprocesswithlogonW

  Alt 20. Okt 2008, 15:45
Nochmals vielen Dank für den Upload!

Ich Habe mir jetzt was aus der Demo zusammengebastelt, und habe nun folgendes Problem:
Wenn ich mich mit meinem regulärem Benutzer aus der Domaine anmelde öffnet er mir den Explorer ohne Probleme, wenn ich aber versuche diesen als Domainadmin aufzurufen passiert nichts und ich schaff es nicht den Fehler zu lokalisieren.

Ich hoffe ihr könnt mir weiter helfen

hier mein Code
Delphi-Quellcode:
function CreateProcessWithLogonW(lpUsername, lpDomain, lpPassword: LPWSTR; dwLogonFlags: dword; lpApplicationName,
  lpCommandLine: LPWSTR; dwCreationFlags: dword; lpEnvironment: pointer; lpCurrentDirectory: LPWSTR; lpStartupInfo:
  PStartUpInfoW; lpProcessInfo: PProcessInformation): boolean; stdcall; external 'advapi32.dll';


implementation

{$R *.dfm}


function CreateProcessAsLogon(const User, PW, Application, CmdLine: WideString): DWORD;
var
  si : TStartupInfoW;
  pif : TProcessInformation;
  s : WideString;
begin
  ZeroMemory(@si, sizeof(si));
  si.cb := sizeof(si);
  si.dwFlags := STARTF_USESHOWWINDOW;
  si.wShowWindow := 1;

  if CmdLine = 'then
    s := Application
  else
    s := Application + ' "' + CmdLine + '"';

  SetLastError(0);
  CreateProcessWithLogonW(PWideChar(User), nil, PWideChar(PW), 0, nil, PWideChar(s), CREATE_DEFAULT_ERROR_MODE, nil,
    nil, @si, @pif);
  Result := GetLastError;
end;

procedure TForm5.ComboBox1Select(Sender: TObject);
var
  User : WideString;
  PW : WideString;
  err: DWORD;
begin
  User := WideString(form1.Edit1.Text);
  PW := WideString(form1.Edit2.Text);
  err := CreateProcessAsLogon(User, PW,stringgrid1.cells[0,combobox1.ItemIndex] , '');
  if err <> 0 then
    ShowMessage(SysErrorMessage(err));
end;

Schonmal vieln Dank
Gruß
Manu
Manuel
Lieber heimlich schlau als unheimlich dumm
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz