eines *.EXE Datei öffnen und unter Parameters auch übergabeparameter übergeben.
In meinem Fall würde ich gerne eine eine von mir geschrieben VisualBasic .EXE aufrufen, nur weiß ich nicht wie ich die Parameter die ich mitgebe in meinem VB Programm abfragen kann ?!
Oder ist die Methode zum starten einer vb anwendung mit übergabeparameter ungeeignet ?!?!
CALL METHOD cl_gui_frontend_services=>execute
EXPORTING
application = lc_prog
parameter = lc_param
synchronous = 'X'
EXCEPTIONS
cntl_error = 1
error_no_gui = 2
bad_parameter = 3
file_not_found = 4
path_not_found = 5
file_extension_unknown = 6
error_execute_failed = 7
OTHERS = 8
.
Wobei in lc_prog der Name des EXE Programms (am besten mit Rechnername und Pfad) steht.
In lc_param sind die Paramter für das Programm angegeben.
Mit synchronous = 'X' wartet das aufrufende Programm auf das Ergebnis.
ich habs zwar noch nicht versucht aber ich nehme an mein vb programm wird mit dieser methode richtig aufgerufen, nur was ich immer noch nicht verstanden habe ich ich in meinem vb programm den parameter string der von der execute methode übergeben wird, einlese oder bin ich zu begriffstützig ?!
und wenn die VB.exe von mehreren SAP-Clients gleichzeitig aufgerufen wird, dann muss das ganze ja auch noch irgendwie Multithreading fähig sein oder wie man das nennt =)
Hallo abap-strizi,
also falls Dein Programm Parameter einließt kann der Parameter in lc_param übergeben werden. Wenn also in der Kommandozeile stehen würde:
xyz.exe meine.txt so käme in lc_prog "xyz.exe" und in lc_param "meine.txt"
Zum Zweiten glaube ich dass so ein Programm im einem eigenen Prozessraum ausgeführt wird. Sich also normalerweise nicht mit anderen streitet. Es sei denn Du verwendest die physikalisch gleichen Dateien die Dein VB bearbeitet. Sprich absolute Text oder so.
Hallo abap-strizi,
hier ruft ein ABAP Programm ein VB Programm.
Also wird der Paramter vom ABAP Programm gefüllt zum Beispiel
lc_prog = 'xyz.exe'.
und gut ist.
Das VB Programm wird dann im einer Commandshell aufgerufen und der Paramter übergeben.
Ich weis sonst jendefalls nicht, wo sonst die Funktion
hmm wahrscheinlich bin ich zu begriffstützig bzw. kann zu wenig vb.
denn ich habe noch immer keinen plan wie ich in meinem vb programm auf die übergebenen parameter zugreifen kann ...