Danke für die Menge interessanter Kommentare.
Ob jemand den Error-Log editiert oder nicht wäre gar nicht wichtig, da das Error-Log dazu gedacht ist, andere anzuschwärzen
also wenn man es ändert, schneidet man sich ins eigene Fleisch, ausserdem welcher am Resultat interessierter Admin würde Fakten manipulieren? Rauskommen tun solche Sachen immer....spätestens wenn man einen Grund abliefern muss...es gibt nur zwei zustände 1. Es funktioniert 2. Es gibt einen Grund dafür das es nicht funktioniert und dieser wird gerade behoben.
Nunja ich habe es jetzt anders gelöst und einen Weg gefunden es innerhalb der Applikation unterzubringen ohne das Konzept zu zerstören.
greez
gabneo
PS: Für alle anderen die jemals diesen Thread finden und aus irgendeinem Grund Notepad fernsteuern möchten, ich habe es so gemacht:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var wnd:HWND; Rect:TRect; i:Integer; s:
string;
begin
shellExecute(
handle,'
open',PChar(getspecialfolder(
handle,CSIDL_WINDOWS)+'
\notepad.exe'),
Nil,
Nil,SW_NORMAL);
sleep(50); <---------- ist sehr unsauber, um das kurze aufblitzen zu umgehen sollte man sich überlegen statt dem shellexecute befehl CreateProcess zu nehmen oder TShellExecuteInfo zu deklarieren und die richtige Formatierung (Top/Left/Height/width) gleich beim start mitzuübergeben, dann wird das sleep überfällig = kein aufblitzen mehr
wnd:=FindWindow('
notepad',
nil);
setwindowpos(wnd,hwnd_top,trunc((screen.DesktopWidth/2)-300),trunc((screen.DesktopHeight/2)-200),600,400,swp_showwindow);
if wnd<>0
then
begin
wnd:=FindWindowEx(wnd,0,'
Edit',
nil);
s:='
TEST';
For i:=1
to Length(s)
do SendMessage(wnd, WM_CHAR, Word(s[i]), 0);
end;
end;