AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Programm starten und warten bis es geladen ist
Thema durchsuchen
Ansicht
Themen-Optionen

Programm starten und warten bis es geladen ist

Ein Thema von Helmi · begonnen am 30. Okt 2004 · letzter Beitrag vom 31. Okt 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#1

Programm starten und warten bis es geladen ist

  Alt 30. Okt 2004, 18:57
Hallo,

wie kann ich ein Programm starten und warten bis es geladen ist?


ich hab schon mal die DB durchgeschaut aber nix gefunden

mfg
Helmi
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#2

Re: Programm starten und warten bis es geladen ist

  Alt 30. Okt 2004, 19:00
im normalfall wartest du automatisch bis es geladen ist, da es vorher nochnicht funktioniert und auch keine ausgaben machen kann
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
Benutzerbild von runningsoft
runningsoft

Registriert seit: 8. Okt 2004
Ort: Bernau
108 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Programm starten und warten bis es geladen ist

  Alt 30. Okt 2004, 19:03
Hallo, präzisiere doch mal Deine Frage.

IMHO muss man doch bei jedem Programm nach dem starten warten, bis es geladen ist (ohne dafür etwas zu tun). Ansonsten geht da nicht viel.

Oh, da war noch einer schneller.
Steffen
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#4

Re: Programm starten und warten bis es geladen ist

  Alt 30. Okt 2004, 19:13
Hallo,
man könnte vermuten das Helmi aus seinem Programm heraus ein
anderes über ShellExecute o. CreateProcess starten möchte.
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#5

Re: Programm starten und warten bis es geladen ist

  Alt 30. Okt 2004, 19:21
hallo,

also ich lass mal etwas Code spielen. Mit folgendem Code öffne ich ein Programm:

Code:
//Programm öffnen
procedure OpenFile(FileName: string);
var
  c: array[0..800] of Char;

begin
  StrPCopy(c, FileName);
  ShellExecute(Application.Handle, 'open', c, nil, nil, SW_NORMAL);
end;
das funktioniert ja ohne probleme und ich öffne damit auch Programme.

nur muss ich bei einem Programm wissen ob es schon fertig ist mit dem laden.

mfg
Helmi
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#6

Re: Programm starten und warten bis es geladen ist

  Alt 30. Okt 2004, 19:26
Hallo Helmi,
handelt es sich um beliebige Programme oder um ganz bestimmte?
D.h. kennst Du die Programme, die gestartet werden können?
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#7

Re: Programm starten und warten bis es geladen ist

  Alt 30. Okt 2004, 19:29
ja

es geht um ein bestimmtes

also mal kurz den hintergrund erläutern:

das prog1 öffnet das prog2 und sendet mit WM_CopyData an das Prog2 noch ein paar Daten bevor sich Prog1 beendet.

- Prog2 öffnen
- Daten an Prog2 schicken
- Prog1 beendet sich selbst

daher muss ich wissen ob das prog2 schon komplett geladen wurde damit ich ihm aus dem prog1 noch was zusenden kann bevor prog1 sich beendet

das senden etc ist alles kein problem - ich muss nur zuvor wissen ob prog2 schon fertig ist
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#8

Re: Programm starten und warten bis es geladen ist

  Alt 30. Okt 2004, 19:31
Ich hatte dieses Problem auch schon, und ich habe es so gelöst, das ich das Programm unter maximaler Systemlast gestartet und die Zeit, die es gebraucht hat, gemessen habe. Diese Zeit habe ich dann zwischen starten und interagieren mit dem Programm gewartet, und bis jetzt funktioniert alles perfekt.
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#9

Re: Programm starten und warten bis es geladen ist

  Alt 30. Okt 2004, 19:34
Hallo,
wenn es um ein bestimmtes Programm geht, dann kennst Du auch den Klassennamen des Hauptfensters.
Wenn Du den Klassennamen nicht kennst, dann kannst Du den mit WinSight32 ermitteln.

Nach dem Du ShellExecute aufgerufen hast, könntest Du mit Hilfe eines Timers und FindWindow
versuchen an das Handle des Fensters heranzukommen (pollen wäre hier das Stichwort).
Du läßt den Timer solange feuern, bis Du mit FindWindow ein gültiges Fensterhandle gefunden
hast.


Wenn das zu startende Programm von Dir ist könnte es auch eine Botschaft an das aufrufende
Programm (wenn das auch von Dir ist) schicken. Dann entfällt das Pollen.
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#10

Re: Programm starten und warten bis es geladen ist

  Alt 30. Okt 2004, 19:36
Hallo,
mir ist gerade eingefallen das ich zu diesem Thema schon einmal ein Beispiel gepostet habe
UpdateProgramm
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 12:51 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