AGB  ·  Datenschutz  ·  Impressum  







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

Erstes NonVCL-Programm: HILFE :-)

Ein Thema von Opa Knack · begonnen am 23. Mär 2005 · letzter Beitrag vom 23. Mär 2005
Antwort Antwort
Opa Knack

Registriert seit: 28. Dez 2004
Ort: Köln
166 Beiträge
 
#1

Erstes NonVCL-Programm: HILFE :-)

  Alt 23. Mär 2005, 11:58
Hallo,

ich versuche gerade, mein erstes Programm NonVCL fertigzustellen, aber irgendwie komme ich dabei nicht weiter.

Vom Programm aus soll ein externes Programm gestartet und mit Hinweisfenstern beim Programmstart und -ende ergänzt werden. Dies habe ich wie folgt umgesetzt:

Delphi-Quellcode:
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('Error: ' + SysErrorMessage(GetLastError));
        Exit;
end;
while WaitForSingleObject(executeInfo.hProcess, 50) <> WAIT_OBJECT_0 do
        Application.ProcessMessages;
CloseHandle(dw);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Showmessage('Please keep in mind to update the database after editing');
  ShellExecAndWait('M:\sales\mfgpro\reporter.exe', '');
  Showmessage('You should restart the report now');
  Close;
end;
Das klappt soweit, aber leider ist da auch schon das Problem: Ich habe das Ganze über FormCreate-Event gestartet. Zwar kann ich über Application.ShowMainForm := false; in der Projektdatei die Anzeige des Formulars verhindern, aber wirklich sinnvoll scheint mir dies nicht (immerhin soll das ja NonVCL werden).

Was kann ich tun, um das kurze Programm oben auch ohne Formular zu starten? Ich bin für jeden Tipp dankbar.

Danke
Opa
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#2

Re: Erstes NonVCL-Programm: HILFE :-)

  Alt 23. Mär 2005, 12:03
Im Hauptprogrammquelltext (Projekt > Quelltext) deinen Quelltext reinschreiben, und das Application-Zeug wegmachen ...
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#3

Re: Erstes NonVCL-Programm: HILFE :-)

  Alt 23. Mär 2005, 12:09
Hi,

irgendwas geht mir hier gegen den Strich. Ich kann zwar kein nonVCL, aber das TForm1 hört sich verdächtig nach VCL an?
  Mit Zitat antworten Zitat
Opa Knack

Registriert seit: 28. Dez 2004
Ort: Köln
166 Beiträge
 
#4

Re: Erstes NonVCL-Programm: HILFE :-)

  Alt 23. Mär 2005, 12:12
Hallo,

wenn ich die Application-Einträge entferne, sagt mir Delphi aber schon beim Prozeduraufruf, dass dies eine Anweisung sein sollte, und bricht ab. Und wie starte ich die Prozedur, wenn ich den FormCreate-Event nicht nutzen kann?

Danke
Opa
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#5

Re: Erstes NonVCL-Programm: HILFE :-)

  Alt 23. Mär 2005, 12:15
Hi,

schau dir am besten mal Luckies nonVCL-Tut an.

http://www.luckie-online.de/Tutorials/

nennt sich "Win32-Api Tutorials".
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#6

Re: Erstes NonVCL-Programm: HILFE :-)

  Alt 23. Mär 2005, 12:25
Also deine prozedurderkl. kommt vor das begin

und das was nach dem begin kommt wird sofort ausgeführt, wenn das programm startet.
du hast dann keine events in dem Sinne mehr, sondern meistens nur noch eine nachrichtenschleife, und dann reagierst du auf die nachrichten.
  Mit Zitat antworten Zitat
Opa Knack

Registriert seit: 28. Dez 2004
Ort: Köln
166 Beiträge
 
#7

Re: Erstes NonVCL-Programm: HILFE :-)

  Alt 23. Mär 2005, 12:36
Hallo,

Danke, das war genau das Richtige...

Gruß
Opa
  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 14:37 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