Einzelnen Beitrag anzeigen

venice2
(Gast)

n/a Beiträge
 
#8

AW: Prüfen ob Programm mit "runas" gestartet worden ist.

  Alt 20. Nov 2020, 10:31
Ich habe wohl Schwierigkeiten mich verständlich auszudrücken.
... den status zurück ob es mit "runas" gestartet wurde oder nicht.
Das ist mein Problem. Die Programme können jeweils selbst in ein Log schreiben.

Ich hätte gerne
Delphi-Quellcode:
...
function IsStartedWithRunas():Boolean;
begin
  ...
end;
und diese soll False liefern wenn das Programm normal gestartet wurde und True wenn mit "runas".
Nochmal!
Das geht nur wenn du den Status aus Anwendung A selbst nach Anwendung B schickst auf welche art auch immer.
Beispiel habe ich genannt.

Verwende die WinProc und oder einen MessageHandler um die Message in Anwendung B zu empfangen.
Und schicke sie aus Anwendung A abhängig davon ob runAs verwendet wird oder nicht.

Delphi-Quellcode:
type
 TForm1 = class(TForm)
  private
    ...
  protected
    procedure ProcMessage(var Msg: TMessage);
  public
   ...
  end;

const
  WM_MYRUNASCHECK = WM_User + 10;

//create..
  FMessageHandle := Classes.AllocateHWnd(ProcMessage)
//destroy..
  if FMessageHandle <> 0 then
    Classes.DeallocateHWnd(FMessageHandle);

procedure TForm1.ProcMessage(var Msg: TMessage);
begin

  if Msg.Msg = WM_MYRUNASCHECK then
  begin
    // schreibe dein Log (Msg.WParam = True oder False)
  end
  else
    Msg.result := DefWindowProc(FMessageHandle, Msg.Msg, Msg.wParam, Msg.LParam);
end;

Geändert von venice2 (20. Nov 2020 um 10:51 Uhr)
  Mit Zitat antworten Zitat