Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi fehler bei shellexecute (unit shellapi vorhanden) (https://www.delphipraxis.net/92897-fehler-bei-shellexecute-unit-shellapi-vorhanden.html)

Stadtfuchs 28. Mai 2007 15:19


fehler bei shellexecute (unit shellapi vorhanden)
 
hi leute,

ich habe ein problem bei einer shellexecute anweisung und stehe grad voll aufn schlauch wie ich das behebe
es wird wohl nur ein simpler tippfehler sein aber ich komme grad nicht drauf und deswegen würde ich euch bitten, euch das mal anzusehn.

Delphi-Quellcode:
// Wird ausgeführt, wenn Timer1 nach 60sec abläuft
procedure TOracle_Sicherung.Timer1Timer(Sender: TObject);
begin
  // Diese Variablen beeinflussen Teile des Sicherungsbefehls
  User := 'system';                     // User auf der Datenbank, der Exports machen darf (Standart User von Oracle)
  Passwort := 'XXXXXXX';                // Passwort vom System User
  TNS := 'XXXXXX';                      // TNS Name der zu exportierenden Datenbank
  DatenbankUser := 'XXXXXXXXX';         // Der Datenbank User
  Datei := 'C:\BackUp_'+DateToStr(Date); // Ort und Name des Exportfilters der erstellt wird
  // .bat Datei erstellen
  List:=tstringlist.create;
  List.add('exp '+User+'/'+Passwort+'@'+TNS+' owner='+DatenbankUser+' file='+Datei);
  List.savetofile('C:\' + 'Oracle_Sicherung.bat');
  // .bat Datei ausführen
  ShellExecute(Application.Handle, //Hier wird Handle nicht gefunden...
                 'open',
                 PChar('C:\' + 'Oracle_Sicherung.bat'),
                 Nil, Nil, SW_NORMAL);
  // Stringlist free, .bat Datei löschen & Sicherungsdatei komprimieren
  List.free;
  deletefile('C:\' + 'Oracle_Sicherung.bat');
  CompressFile('C:\'+Datei);
end;
bei dem Punkt application.handle findet der des einfach net und ich such mich grad tot woran des nu wieder hapern könnte...

wäre echt genial wenn mir da einer mal nen tritt in die richtige richtung geben könnte

besten dank im voraus

stadtfuchs

3_of_8 28. Mai 2007 15:24

Re: fehler bei shellexecute (unit shellapi vorhanden)
 
Hast du auch Forms eingebunden, in dieser Unit ist Application und TApplication nämlich deklariert?

Außerdem kannst du statt Application.Handle auch einfach 0 schreiben.

Stadtfuchs 28. Mai 2007 15:27

Re: fehler bei shellexecute (unit shellapi vorhanden)
 
ich bin ja sooooo.... :wall:

allerbesten dank :mrgreen:
manchmal seh ich den wald vor lauter bäumen nicht :-D

3_of_8 28. Mai 2007 15:28

Re: fehler bei shellexecute (unit shellapi vorhanden)
 
Die einfachste Lösung wäre übrigens tatsächlich, einfach 0 hinzuschreiben, weil du durch das einbinden von Forms nur ne Menge Overhead mit rein kriegst und deine EXE aufblähst.

Stadtfuchs 28. Mai 2007 15:30

Re: fehler bei shellexecute (unit shellapi vorhanden)
 
danke für den hinweis, dann werd ich die 0 nehmen


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:34 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz