bonjour a tous.
voila quel est mon problème,
j'ai fait une application de force de vente sur PDA. Je dispose d'un emulateur pour le lexteur de code à barres qui tourne en arrière plan.
Le problème est pour la "synchro" qui se fait via modem RTC, et qui ne supporte pas que l'emulateur tourne en même temps.
J'utilise pour lancer l'emulateur la fonctin suivante.
Public Class Launch
<DllImport("CoreDll.DLL", SetLastError:=True)> _
Private Shared Function CreateProcess(ByVal imageName As String, ByVal cmdLine As String, ByVal lpProcessAttributes As IntPtr, ByVal lpThreadAttributes As IntPtr, ByVal boolInheritHandles As Int32, ByVal dwCreationFlags As Int32, ByVal lpEnvironment As IntPtr, ByVal lpszCurrentDir As IntPtr, ByVal si() As Byte, ByVal pi As ProcessInfo) As Integer
End Function
<DllImport("CoreDll.dll")> _
Private Shared Function GetLastError() As Int32
End Function
Public Shared Function CreateProc(ByVal ExeName As String, ByVal CmdLine As String, ByVal pi As ProcessInfo) As Boolean
If pi Is Nothing Then
pi = New ProcessInfo
End If
Dim si(127) As Byte
Return CreateProcess(ExeName, CmdLine, IntPtr.Zero, IntPtr.Zero, 0, 0, IntPtr.Zero, IntPtr.Zero, si, pi) <> 0
End Function 'CreateProc
End Class 'Externals
Public Class ProcessInfo
Public hProcess As IntPtr
Public hThread As IntPtr
Public ProcessId As Int32
Public ThreadId As Int32
End Class
ce que je recherche c'est la fonction inverse qui va arrêter mon process, afin de lancer ma connexion.
J'ai bien testé
System.Diagnostics.Process myProcess;
puis myProcess.Start(); (qui fonctionne très bien )
mais myProcess.Close(); n'arrete pas grand chose.
et myProcess.Kill(); m'oblige a rebouter le PDA pour refaire tourner correctement la PDA.
Donc si quelqu'un aurais quelques piste afin d'orienté mes recherche, ce serais vachtement bien.
Merci.