Frage zu WinExec()
-
Hi!
Will ein externes programm starten wenn auf einen button geklickt wird, handelt sich um ein Script von der Software CATIA.
void CCATIADlg::OnButton1() { // read-script WinExec("c:\\catia\\Read_IDF.CATScript", SW_SHOW); }der Pfad stimmt 100pro, allerdings passiert überhaupt nichts wenn ich auf den Button klicke...kann mir das nicht erklären, hat jemand eine Idee?
Danke im voraus!
EDIT: Oder funktioniert WinExec nur mit .exe - Anwendungen?
-
Nein an sich dürfte er die, mit der jeweiligen Dateiendung, verbundene Anwendung starten, vielleicht ist kein Programm für ".CATScript" definiert?
-
Doch, das ist es...es wird automatisch mit CATIA gestartet, funktioniert auch wenn ich es einfach per doppelklick starte...
-
Also ich hab`s jetzt einfach mal mit system() probiert..damit funzt es komischerweise problemlos!
EDIT: Aber er braucht übelst lange...das cmd-fenster hängt erstmal 20sekunden, dann wird das script erst gestartet

EDIT2: Hat denn jemand ne Idee warum es mit WinExec nicht geht, bzw. wie ich es noch starten könnte, damit es nicht so lange dauert? Wie gesagt, wenn ich es per maus starte geht es sofort, aber mit system() hängt dieses cmd-fenster erst noch mindestens 20 sekunden.
-
WinExec ist veraltet und sollte nicht benutzt werden.
Benutze lieber ShellExecute...