![]() |
Re: Send2FTP
@_frank_: überhaupt keine idee was das soll also von mir kommt die fehlermeldung nich .. kannst du nochmal genau beschreiben wann dieser fehler aufgetreten ist ?
@Die Muhkuh: und ich war so stolz dsa ich nur eine anwendung habe :cry: :lol: also ich habe ne möglichkeit gefunden (ne von windows bereitgestellte) die anwendung nach einmaliger nachfrage ohne uac abfrage mit admin rechten zu starten :) €: klappt aber nicht :( aber wozu brauch ich die überhaupt ich habe mal uac angestellt und mir nen test eingeschränkten user gemacht und da läuft alles wunderbar, ohne admin rechte ! €:außer beim firewall exeption hinzufügen @toms: hab ich gemacht kommt dann in die nächste version €: hilft leider nicht :/ mfg smallsmoker |
Re: Send2FTP
yeah problem gelöst :)
ich editiere hier später rein wie :) |
Re: Send2FTP
Zitat:
|
Re: Send2FTP
nein gucke changelog :wink:
erst mal das angucken ![]() also erklären will ich nichts aber guckt euch einfach mal den code an vieleicht hilfts ja jemandem: das is der quellcode meines projekts
Delphi-Quellcode:
qc vom starter
program Send2FTP;
uses sysutils, classes, Forms, windows, shellapi, usendto in 'usendto.pas' {Form1}, usendoform in 'usendoform.pas' {Form2}, ulizenz in 'ulizenz.pas' {Form3}; {$R *.res} {$R starter.res} procedure ShellExecAndWait(dateiname: string; Parameter: string); var executeInfo: TShellExecuteInfo; dw: DWORD; begin FillChar(executeInfo, SizeOf(executeInfo), 0); with executeInfo do begin cbSize := SizeOf(executeInfo); fMask := SEE_MASK_NOCLOSEPROCESS or SEE_MASK_FLAG_DDEWAIT; Wnd := GetActiveWindow(); executeInfo.lpVerb := 'open'; executeInfo.lpParameters := PChar(Parameter); lpFile := PChar(dateiname); nShow := SW_SHOWNORMAL; end; if ShellExecuteEx(@executeInfo) then dw := executeInfo.HProcess else begin // ShowMessage('Fehler: ' + SysErrorMessage(GetLastError)); Exit; end; while WaitForSingleObject(executeInfo.hProcess, 50) <> WAIT_OBJECT_0 do Application.ProcessMessages; CloseHandle(dw); end; var s:tresourcestream; begin Application.Initialize; Application.MainFormOnTaskbar := True; Application.Title := 'Send2FTP'; Application.CreateForm(TForm1, Form1); Application.CreateForm(TForm2, Form2); Application.CreateForm(TForm3, Form3); if paramcount < 1 then begin s := tresourcestream.Create(hInstance,'sdbfile',RT_RCDATA); try s.SaveToFile('send2ftpadmin.sdb'); finally s.free; end; s := tresourcestream.Create(hInstance,'starter',RT_RCDATA); try s.SaveToFile('EditSend2FTPSettings.exe'); ShellExecute(0,'open','EditSend2FTPSettings.exe',nil, nil, SW_HIDE); finally s.free; application.ShowMainForm := false; application.MainForm.Close; end; end else if not (paramstr(1) = 'editthesend2ftpsettings') then begin application.ShowMainForm := false; form2.Show; end; Application.Run; if paramstr(1) = 'editthesend2ftpsettings' then begin s := tresourcestream.Create(hInstance,'sdbfile',RT_RCDATA); try s.SaveToFile('send2ftpadmin.sdb'); finally s.free; ShellExecAndWait('sdbinst','-q -u send2ftpadmin.sdb'); deletefile('send2ftpadmin.sdb'); end; end; end.
Delphi-Quellcode:
dem starter muss man nun noch admin rechte z.B:
program EditSend2FTPSettings;
uses sysutils, classes, shellapi, windows; procedure KillSelf(); begin with TStringList.Create do try Add(':Label1'); Add('del "' + extractfilepath(Paramstr(0)) + 'send2ftpadmin.sdb' + '"'); Add('del "' + Paramstr(0) + '"'); Add('if Exist "' + Paramstr(0) + '" goto Label1'); Add('if Exist "' + extractfilepath(Paramstr(0)) + 'send2ftpadmin.sdb' + '" goto Label1'); Add('del "' + ExtractFilePath(Paramstr(0)) + 'name.bat"'); SavetoFile(ExtractFilePath(Paramstr(0)) + 'name.bat'); finally Free end; //Ausführen ShellExecute(0, 'open', PChar(ExtractFilePath(Paramstr(0)) + 'name.bat'), nil, nil, SW_HIDE); end; begin ShellExecute(0,'open','sdbinst','-q send2ftpadmin.sdb', nil, SW_HIDE); ShellExecute(0,'open','Send2FTP.exe','editthesend2ftpsettings', nil, SW_HIDE); KillSelf() end. ![]() €: jetzt will ich aber auch mal von euch gesagt haben das das ne gute idee war 8) €2: da waren ne menge fehler drinne :/ alle draußen |
Re: Send2FTP
Anmerkung zu
Delphi-Quellcode:
Lade die Form2 und Form3 dynamisch bei Bedarf.
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm3, Form3); |
Re: Send2FTP
kenn ich nich aber ich leren gern dazu ich guck mich mal dazu um :)
mfg smallsmoker |
Re: Send2FTP
Version 1.0.11 ist nun verfügbar
änderungen siehe changelog mfg smallsmoker boa das war schwer :) happy bugtracking €toms: reicht es für diese dymische sache wenn ich einfach hinschreibe:
Delphi-Quellcode:
if (paramstr(1) = 'editthesend2ftpsettings') or (paramcount < 1) then
begin Application.CreateForm(TForm1, Form1); Application.CreateForm(TForm2, Form2); end else Application.CreateForm(TForm3, Form3); |
Re: Send2FTP
Zitat:
Zitat:
|
Re: Send2FTP
und wieso klappt es dann bei mir :/
siehe anhang toll hab den fehler gefunden behebe ihn gerade |
Re: Send2FTP
Jetzt geht es seltsamerweise wieder. Das erste Mal hat's eine EditSend2FTPSettings.exe extrahiert, jetzt nicht mehr.?!?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:59 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