PDA

Visualizza versione completa : [VB] shellexecute


gkcuvb
02-09-2003, 16.45.05
Devo passare delle informazioni fra due apllicazione in vb e so che possibile farlo utilizzando la riga di comando, ma non so come. Qualcuno sa aiutarmi?
Grazie
:rolleyes:

LoryOne
02-09-2003, 18.50.11
Beh, la cosa piuttosto semplice:
Lanci il programma richiamato con ShellExecute e ricavi la riga di comando con la funzione Command$

Codice di Primo

Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Private Const SW_SHOWNORMAL = 1

Private Sub Command1_Click()
Dim Parametri As String

Parametri = InputBox("Imposta la riga di comando letta dal programma richiamato", "Parametri")
If LenB(Trim(Parametri)) > 0 Then
Label1.Caption = "Tra tre secondi mi chiudo..."
DoEvents
ShellExecute Me.hwnd, vbNullString, "Secondo.exe", Parametri, App.Path, SW_SHOWNORMAL
Sleep 3000
Unload Me
End If
End Sub

Private Sub Form_Load()
Caption = App.EXEName
End Sub


Codice di Secondo

Private Sub Command1_Click()
MsgBox Command$
End Sub

Private Sub Form_Load()
Caption = App.EXEName
End Sub

LoryOne
02-09-2003, 18.52.07
I due programmi compilati...

gkcuvb
03-09-2003, 08.42.10
Grazie mille!!!!!