momo1405
Messages postés1Date d'inscriptionmercredi 15 octobre 2003StatutMembreDernière intervention22 octobre 2003
-
22 oct. 2003 à 14:34
cs_PaTaTe
Messages postés2126Date d'inscriptionmercredi 21 août 2002StatutContributeurDernière intervention19 février 2021
-
22 oct. 2003 à 15:03
Momo1405Momo1405 ;)
Salut, je suis embete avec l'execution d'un prog "bat". Lorsque je le lance sous DOS, tout est OK, par contre en utilisant la commande "SHELL" dans un prog VB, il ne fait rien. Est ce un problème d'environnement ... (Je suis sous XP). Merci par avance.
cs_PaTaTe
Messages postés2126Date d'inscriptionmercredi 21 août 2002StatutContributeurDernière intervention19 février 20212 22 oct. 2003 à 15:03
'En fait le probleme viendrais que ton bat utilise le repertoire courant pour fonctionner et qu'il est appelé par le shell de VB de manière un peu sauvage.
'Je ne saurais trop te conseigner une fontion que voici. cette fontion est normalement pour afficher du texte DOS dans une application VB (si tu connait un peu l'emulation ca donne le meme style qu'un ePSXe (fenetre Win32 + fenetre DOS)
Private Declare Function AllocConsole Lib "kernel32" () As Long
Private Declare Function GetStdHandle Lib "kernel32" (ByVal nStdHandle As Long) As Long
Private Declare Function WriteConsole Lib "kernel32" Alias "WriteConsoleA" (ByVal hConsoleOutput As Long, ByVal lpBuffer As String, ByVal nNumberOfCharsToWrite As Long, lpNumberOfCharsWritten As Long, lpReserved As Any) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Declare Function FreeConsole Lib "kernel32" () As Long
Private Const STD_OUTPUT_HANDLE = -11&
Private hConsole As Long
'A l'endroit désiré ,
Dim num_written As Long
If AllocConsole() Then
hConsole = GetStdHandle(STD_OUTPUT_HANDLE)
If hConsole = 0 Then MsgBox "Impossible d'allouer STDOUT"
app_name = App.Path
If Right$(app_name, 1) <> "" Then app_name = app_name & ""
app_name = app_name & "test.bat"
txt = Test de la fonction" & vbCrLf
WriteConsole hConsole, txt, Len(txt), num_written, vbNullString
FreeConsole
'Je me suis servis de ca pour faire un front End de mame et ca fonctionne tres bien avec cette fontion alors qu'avec la fontion SHELL rien ne fonctionne. teste toujours ...