begin process at 2010 03 16 01:23:34
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Modules

 > MODULE DE COMMUNICATION ENTRE APPLICATION

MODULE DE COMMUNICATION ENTRE APPLICATION


 Information sur la source

Note :
Aucune note
Catégorie :Modules Classé sous :Communication, Module, Executables, Plusieurs Niveau :Initié Date de création :12/05/2009 Date de mise à jour :13/05/2009 16:00:14 Vu :2 189

Auteur : PROTEUS91

Ecrire un message privé
Commentaire sur cette source (25)
Ajouter un commentaire et/ou une note

 Description

Bonjour,

Avant j'utilisais la méthode DDE pour faire communiquer deux applications, il semble que cela ne puisse malheureusement pas répondre aux attentes de tous le monde, effectivement tous le monde ne peux pas passer par l'événement DDE.

En cherchant a droite a gauche j'ai monté ce module a la demande d'un utilisateur du site, cependant j'espère que certain d'entre vous seront a même de m'aide améliorer ce bout de code.

Mode d'utilisation :
1. Vous créez un nouveau module à votre code
2. Vous collez le code ci dessous dedans
3. Vous ajouter la commande : PROCEDURE_SENDINFINTEREXE Me, "Application Cible", "Message"

Application Cible est le Caption de l'application qui doit recevoir l'information
Message est le message que vous souhaitez transférer.

Source

  • '=======================================================================================================
  • 'MODULE DE COMMUNICATION INTER EXÉCUTABLE
  • ' - On devis la totalité des messages Windows vers l'application qui écoute
  • ' - Si les message nous intéresse on les traites dans le cas contraire on les rends a Windows
  • ' - Pour utiliser ce module :
  • ' 1. Mettre dans le Form_Load l'instruction suivante :
  • ' PROCEDURE_MODEECOUTE Me, True, LBL_AFFICHAGE
  • ' 2. Mettre dans la commande d'envoie d'information :
  • ' PROCEDURE_SENDINFINTEREXE Me, "Application Cible", "MEDIAVIDEO;POSITIONMINISUB"
  • ' - ATTENTION, un plantage avec le détournement des messages Windows rend le debugage de l'application très sensible
  • '=======================================================================================================
  • Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lngParam As Long) As Long
  • Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
  • Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
  • Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
  • Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (hpvDest As Any, hpvSource As Any, ByVal cbCopy As Long)
  • Global lpPrevWndProc As Long
  • Global gHW As Long
  • Public Const GWL_WNDPROC = (-4)
  • Public Const WM_COPYDATA = &H4A 'Numero du Message windows
  • Type COPYDATASTRUCT
  • DwData As Long
  • CbData As Long
  • LpData As Long
  • End Type
  • Public Temp As Long
  • Public TempReceptInformation As String
  • Public ObjectReceptInformation As Label
  • '=======================================================================================================
  • 'PROCEDURE POUR ENVOYER DES INFORMATIONS VERS UNE APPLICATION QUI EST A L'ECOUTE
  • '=======================================================================================================
  • 'Exemple :
  • 'PROCEDURE_SENDINFINTEREXE Me, "Application Cible", "Message"
  • '=======================================================================================================
  • Public Sub PROCEDURE_SENDINFINTEREXE(FormObjectName As Form, CaptionExeDest As String, StrTemp As String)
  • Dim CdCopyData As COPYDATASTRUCT
  • Dim ThWnd As Long
  • Dim ByteBuffer(1 To 255) As Byte
  • ThWnd = FindWindow(vbNullString, CaptionExeDest) 'Recherche le handle de l'application
  • Call CopyMemory(ByteBuffer(1), ByVal StrTemp, Len(StrTemp)) 'Copie la chaine dans la structure à envoyer
  • CdCopyData.DwData = 3
  • CdCopyData.CbData = Len(StrTemp) + 1
  • CdCopyData.LpData = VarPtr(ByteBuffer(1))
  • I = SendMessage(ThWnd, WM_COPYDATA, FormObjectName.hwnd, CdCopyData) 'Envoye du message
  • Do While ObjectReceptInformation.Caption = ""
  • ObjectReceptInformation.Caption = "En Attente reception"
  • Loop
  • End Sub
  • '=======================================================================================================
  • 'PROCEDURE POUR ENVOYER DES INFORMATIONS VERS UNE APPLICATION QUI EST A L'ECOUTE
  • '=======================================================================================================
  • 'Attention le LabelObject est optionnel mais uniquement sur un retour de procedure de Ecoute a False
  • '=======================================================================================================
  • Public Sub PROCEDURE_MODEECOUTE(FormObject as Form, EcouteMode As Boolean, Optional LabelObject As Label)
  • gHW = FormObject.hwnd
  • Select Case EcouteMode
  • Case True 'Détourne les Messages windows vers la fonction WindowProc
  • lpPrevWndProc = SetWindowLong(gHW, GWL_WNDPROC, AddressOf WindowProc)
  • Set ObjectReceptInformation = LabelObject
  • Case False 'Demande à Windows de ne plus envoyer les Message
  • Temp = SetWindowLong(gHW, GWL_WNDPROC, lpPrevWndProc)
  • Set ObjectReceptInformation = Nothing
  • End Select
  • End Sub
  • '=======================================================================================================
  • 'FONCTION SUR ECOUTE INTERCEPTE ET INTERPRETE LES MESSAGE WINDOWS UTILE POUR LE HOOK = TRUE
  • '=======================================================================================================
  • Function WindowProc(ByVal hw As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lngParam As Long) As Long
  • If uMsg = WM_COPYDATA Then 'On reçoit TOUS les messages mais seul WM_COPYDATA nous interresse
  • Call InterProcessComms(lngParam) 'On appel la procedure d'analyse du message
  • End If 'Si le message n'est pas interressant on les rend à Windows pour les gérer
  • WindowProc = CallWindowProc(lpPrevWndProc, hw, uMsg, wParam, lngParam)
  • End Function
  • '=======================================================================================================
  • 'PROCEDURE PERMETTANT D'AFFICHER LE MESSAGE EN PROVENANCE DE L'ECOUTE SUR LA FONCTION WINDOWPROC
  • '=======================================================================================================
  • Sub InterProcessComms(lngParam As Long)
  • Dim CdCopyData As COPYDATASTRUCT
  • Dim ByteBuffer(1 To 255) As Byte
  • Dim StrTemp As String
  • Call CopyMemory(CdCopyData, ByVal lngParam, Len(CdCopyData))
  • Select Case CdCopyData.DwData
  • Case 1
  • Debug.Print "1"
  • Case 2
  • Debug.Print "2"
  • Case 3
  • Call CopyMemory(ByteBuffer(1), ByVal CdCopyData.LpData, CdCopyData.CbData)
  • StrTemp = StrConv(ByteBuffer, vbUnicode)
  • StrTemp = Left$(StrTemp, InStr(1, StrTemp, Chr$(0)) - 1)
  • ObjectReceptInformation.Caption = StrTemp
  • End Select
  • End Sub
'=======================================================================================================
'MODULE DE COMMUNICATION INTER EXÉCUTABLE
'   - On devis la totalité des messages Windows vers l'application qui écoute
'   - Si les message nous intéresse on les traites dans le cas contraire on les rends a Windows
'   - Pour utiliser ce module :
'           1. Mettre dans le Form_Load l'instruction suivante :
'               PROCEDURE_MODEECOUTE Me, True, LBL_AFFICHAGE
'           2. Mettre dans la commande d'envoie d'information :
'               PROCEDURE_SENDINFINTEREXE Me, "Application Cible", "MEDIAVIDEO;POSITIONMINISUB"
'   - ATTENTION, un plantage avec le détournement des messages Windows rend le debugage de l'application très sensible
'=======================================================================================================
Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lngParam As Long) As Long
Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (hpvDest As Any, hpvSource As Any, ByVal cbCopy As Long)

Global lpPrevWndProc                                As Long
Global gHW                                          As Long

Public Const GWL_WNDPROC = (-4)
Public Const WM_COPYDATA = &H4A                                        'Numero du Message windows

Type COPYDATASTRUCT
    DwData                                          As Long
    CbData                                          As Long
    LpData                                          As Long
End Type

Public Temp                                         As Long
Public TempReceptInformation                        As String
Public ObjectReceptInformation                      As Label

'=======================================================================================================
'PROCEDURE POUR ENVOYER DES INFORMATIONS VERS UNE APPLICATION QUI EST A L'ECOUTE
'=======================================================================================================
'Exemple :
'PROCEDURE_SENDINFINTEREXE Me, "Application Cible", "Message"
'=======================================================================================================
Public Sub PROCEDURE_SENDINFINTEREXE(FormObjectName As Form, CaptionExeDest As String, StrTemp As String)
Dim CdCopyData                                      As COPYDATASTRUCT
Dim ThWnd                                           As Long
Dim ByteBuffer(1 To 255)                            As Byte

ThWnd = FindWindow(vbNullString, CaptionExeDest)                        'Recherche le handle de l'application

Call CopyMemory(ByteBuffer(1), ByVal StrTemp, Len(StrTemp))             'Copie la chaine dans la structure à envoyer
CdCopyData.DwData = 3
CdCopyData.CbData = Len(StrTemp) + 1
CdCopyData.LpData = VarPtr(ByteBuffer(1))
I = SendMessage(ThWnd, WM_COPYDATA, FormObjectName.hwnd, CdCopyData)    'Envoye du message

Do While ObjectReceptInformation.Caption = ""
    ObjectReceptInformation.Caption = "En Attente reception"
Loop

End Sub

'=======================================================================================================
'PROCEDURE POUR ENVOYER DES INFORMATIONS VERS UNE APPLICATION QUI EST A L'ECOUTE
'=======================================================================================================
'Attention le LabelObject est optionnel mais uniquement sur un retour de procedure de Ecoute a False
'=======================================================================================================
Public Sub PROCEDURE_MODEECOUTE(FormObject as Form, EcouteMode As Boolean, Optional LabelObject As Label)
gHW = FormObject.hwnd
Select Case EcouteMode 
    Case True                                                           'Détourne les Messages windows vers la fonction WindowProc
        lpPrevWndProc = SetWindowLong(gHW, GWL_WNDPROC, AddressOf WindowProc)
        Set ObjectReceptInformation = LabelObject
    Case False                                                          'Demande à Windows de ne plus envoyer les Message
        Temp = SetWindowLong(gHW, GWL_WNDPROC, lpPrevWndProc)
        Set ObjectReceptInformation = Nothing
End Select

End Sub

'=======================================================================================================
'FONCTION SUR ECOUTE INTERCEPTE ET INTERPRETE LES MESSAGE WINDOWS UTILE POUR LE HOOK = TRUE
'=======================================================================================================
Function WindowProc(ByVal hw As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lngParam As Long) As Long
If uMsg = WM_COPYDATA Then                                          'On reçoit TOUS les messages mais seul WM_COPYDATA nous interresse
    Call InterProcessComms(lngParam)                                'On appel la procedure d'analyse du message
End If                                                              'Si le message n'est pas interressant on les rend à Windows pour les gérer
WindowProc = CallWindowProc(lpPrevWndProc, hw, uMsg, wParam, lngParam)

End Function

'=======================================================================================================
'PROCEDURE PERMETTANT D'AFFICHER LE MESSAGE EN PROVENANCE DE L'ECOUTE SUR LA FONCTION WINDOWPROC
'=======================================================================================================
Sub InterProcessComms(lngParam As Long)
Dim CdCopyData                                      As COPYDATASTRUCT
Dim ByteBuffer(1 To 255)                            As Byte
Dim StrTemp                                         As String

Call CopyMemory(CdCopyData, ByVal lngParam, Len(CdCopyData))
Select Case CdCopyData.DwData
    Case 1
        Debug.Print "1"
    Case 2
        Debug.Print "2"
    Case 3
        Call CopyMemory(ByteBuffer(1), ByVal CdCopyData.LpData, CdCopyData.CbData)
        StrTemp = StrConv(ByteBuffer, vbUnicode)
        StrTemp = Left$(StrTemp, InStr(1, StrTemp, Chr$(0)) - 1)
        ObjectReceptInformation.Caption = StrTemp
End Select

End Sub

 Conclusion

Comme je l'ai dit plus haut. Détourner les messages Windows rends le debugage de l'application très très sensible. Je vous suggère de ne pas avoir d'erreur si vous avez déjà lancé la procédure de réception d'information !

Si quelqu'un (Reinfield vu que tu vas sans doute être le premier a poste :p) a une idée pour éviter le plantage de VB quand on passe en debugage.

P.S. Un grand merci a Sephiro pour le code initial


 Historique

12 mai 2009 17:11:38 :
(Aucune)
13 mai 2009 16:00:14 :
Il manquait une ligne de code qui rendait l'écoute impossible c'est corrigé !

 Sources du même auteur

Source avec Zip Source avec une capture PROGRESS BAR COULEURS DIFFERENTES
Source avec Zip CONNECTION STRING POUR CONTROL ADO
Source avec Zip ENVOIE DE MAIL
Source avec Zip COMMUNICATION DDE
ENVOIE EMAIL

 Sources de la même categorie

GÉNÉRATEUR DE MAIL LOTUS NOTES AVEC MISE EN FORME VIA UNE SY... par 8Tnerolf8
Source avec Zip Source avec une capture VB6 ADDIN - FAITES DISPARAITRE LES MSGBOX D'ERREUR IDE par EBArtSoft
REGISTRE WINDOWS par Duke49
Source avec Zip Source avec une capture LECTURE / ÉCRITURE SUR LE PORT PARALLÈLE FACILEMENT AVEC INP... par Moritus
Source avec Zip Source avec une capture TREEVIEW FACILE par cuic01

 Sources en rapport avec celle ci

Source avec Zip Source .NET (Dotnet) MULTI THREAD AVEC AFFICHAGE par jaknight007
Source avec Zip Source avec une capture CHANGEUR D'ICONES par djgab21
Source avec Zip COMMUNICATION INTER-PROCESSUS (IPC) par MadM@tt
Source avec Zip Source avec une capture LECTURE / ÉCRITURE SUR LE PORT PARALLÈLE FACILEMENT AVEC INP... par Moritus
Source avec Zip Source avec une capture Source .NET (Dotnet) EXEMPLE DE SYNCHRO MULTI-THREAD (DÉBUTANT) par avengerfrance

Commentaires et avis

Commentaire de Renfield le 12/05/2009 23:47:20 administrateur CS

tu peux utiliser mon module de subclassing.
en mode IDE, il injecte du code assembleur qui sera utilisé comme WindowProc.
Si VB6 est en point d'arret, il n'est pas receptif... Si on lui transmet un message, boum.
Enfin, en temps normal... là, la procédure ASM detecte que VB6 ne peux pas réagir, et donne le message a traiter à Windows.

En mode Exe, comme tu le sais surement, pas de soucis.

voir:
http://www.vbfrance.com/codes/MODULE-SUBCLASSER_38442.aspx

Commentaire de PROTEUS91 le 13/05/2009 16:02:39

Merci Renfield, pour le message j'irai jeter un coup d'oeil dès que j'aurai une seconde. :) Mais a defaut de vouloir utiliser ta subclass qui je suis sure doit certainement repondre a mes attente n'est il pas possible de dire au programme de couper l'écoute quand visual basic passe en mode point d'arret ?

Commentaire de Renfield le 13/05/2009 16:05:17 administrateur CS

la virtual machine qui execute le code VB coupe net l'execution.
ma dll interroge la fonction EbMode pour questionner la VM sur son etat receptif ou non

Commentaire de PROTEUS91 le 13/05/2009 18:18:05

C'est un peu le jeu de la chevre qui demande a une vache comment faire le meme lait :) il faut que je regarde ton code, apres promis je te tiens o courant. O fait ta vu je me suis pas trompé t bien domicilié sur ce site t le premier a avoir repondu :p

Commentaire de banbiou le 18/05/2009 13:55:04

Bonjour,

tout d'abord, merci pour les applications que vous développer sans arrêt. J'ai toujours du mal à suivre mais j'aime ça...
Peux être que ma demande n'a rien à voir avec ce bout de code, mais je vous la pose quand même car je souhaiterai faire communiquer dans logiciel ensemble : Excel et Agir (Saturn). Celui ci est un vieux logiciel de traitement de taches. Je me suis renseigné sur la fonction DDE mais vu mon niveau, je comprend pas tout...
Si quelqu'un peut me venir en aide, je lui serais reconnaissant.

Merci,
Banbiou

Commentaire de PROTEUS91 le 18/05/2009 14:49:06

Le probleme c'est que dans notres cas les deux applications qui communiquent ensemble sont deux applications developpées par nos soins (toi y compris) dans le cas ou se sont des applications developpées par des tiers il faut obligatoirement passer par des API si elles sont disponible, desolé dans ton cas je ne saurai te venir en aide.

Commentaire de Renfield le 18/05/2009 14:56:06 administrateur CS

que souhaites tu faire faire a Saturn ? (connais pas, mais bon)

Commentaire de dc46 le 19/05/2009 10:09:16

Bonjour,
une question, peut-etre stupide, ce code permet-il de faire communiquer deux applications situés sur deux machines en réseaux.
Merci et félicitations.

Commentaire de Renfield le 19/05/2009 10:13:16 administrateur CS

non, SendMessage ne s'y prête guère.

tournes toi vers les Sockets (ou les Mailslots)

Commentaire de dc46 le 19/05/2009 13:13:23

Merci Renfield

Commentaire de banbiou le 19/05/2009 14:23:23

Renfield,

ce que je voudrais faire avec agir c'est :
j'ai une application dans Excel (avec des bout de code...) qui, en remplissant des carractéristiques dans des cellules, me donne au final un texte. C'est ce texte que je veux mettre dans Agir (saturn).
Saturn est "tres tres vieux" donc très peu de renseignements...(env 1980)

Merci d'avance.

Commentaire de LandTech le 19/05/2009 18:00:52

Salut,

Pour commencer, très bon code PROTEUS91.

Pour Banbiou, tu pourrais utiliser le très vieux SendKeys, pas top mais au moins, ça marche.

Et moi, j'ai une question, comment on peut faire pour faire ouvrir un fichier à une application quand celle ci est déja ouverte, genre Notepad++ ou Visual C++.

Voila et merci d'avance.


Commentaire de LandTech le 19/05/2009 18:15:03

Salut

J'oubliais, je travaille en .Net 2.0 donc si vous pouviez me fournir une solution dans ce langage et sans DLL à ajouter, ce serai bien merci encore.

Voila

Commentaire de comme le 20/05/2009 00:13:07

Mes excuses d'abord pour cette question: j'aime bien savoir qu'est ce qu'une communication entre 2 applications,nous les débutants ,nous ne commprenons pas votre discussion ci dessus,je fais des applications vb ,des connections ado,mis jamais entendu que deux applictions peuvent communiquer....comment... et quel est le but....... Merci d'expliquer

Commentaire de banbiou le 20/05/2009 12:53:24

Bonjour

Comme,
je suis d'ac. avec toi, moi même je comprend pas tout car je suis également débutant... Mais j'essaye de plus en plus ;)

LandTech,
je vais me renseigner sur le SendKeys, mais comme dit juste au dessus, moi etre débutant...

Merci qd même, j'aime les choses compliquées.

Commentaire de Renfield le 20/05/2009 12:57:22 administrateur CS

Sendkeys, c'est dangereux, je le repète.

deux applis qui communiquent ?
ben oui, demander des nouvelles de la famille, tout ça...


Dans la vie de tous les jours, tu utilises des applis qui communiquent entre elles...
ton navigateur et le serveur web qui est en face, par exemple...

le but est de lancer des opérations, et de demander des infos accessible a l'autre application...

Commentaire de banbiou le 20/05/2009 15:55:47

oui mais pour les débutants comme moi les lignes de code ou certaines applications reste compliquées à comprendre lorsque ce n'est pas réalisé avec un interface graphique...


Sinon pour sendkeys, merci, je vais y réfléchir à deux fois si je l'utilise.

Commentaire de PROTEUS91 le 20/05/2009 17:45:31

C'est sure banbi :p

Meme en lisant les détails que j'ai mis dans le module ca ne te parait pas clair ?

Commentaire de comme le 21/05/2009 13:20:30

Souvent les réponses de RENFIELD sont convaincantes des quelles nous avons appris beaucoup ,mais cette fois il n'a pas pu devoiler cette communication avec un exeple convainquant....ni de viser notre ignorance;;......

Commentaire de banbiou le 27/05/2009 11:41:22

Heureusement que tu as mis des coms oui... :p
Lorsque je t'ai dis débutant, c'est débutant...lol
Faut le dire et pas avoir honte : je comprend le raisonnement mais serai incapable de le faire.
Tu ne pourrais pas m'ouvrir l'esprit ;), me faire suivre quelques programmes de petit débutant où bien le point de départ qui à toi t'a permis de commencer ...?
Merci.

Commentaire de LandTech le 27/05/2009 19:29:28

Salut,

Sinon, si c'est du texte que tu veux placer dans une textbox, richtextbox ou même un label, ou bouton, et que tu es sous windows, tu peux te servir de l'API Windows SendMessage et du "message" SETTEXT.

Voilà.

Commentaire de banbiou le 28/05/2009 17:57:01

oui LandTech, je veux bien mais, peux etre que ma question va etre débile, comment introduire les phrases (que j'aurai récupéré grace a SendMessage) dans mon appli qui est Agir (Saturn) ???
il n'y a pas de VB dans Saturn. Je sais que je peux recevoir un texte en ASCII mais je ne sais pas comment le placer au bon endroit...

Merci en tout cas de prendre du tps pour moi.. ^^

Commentaire de LandTech le 28/05/2009 19:53:53

Salut,

Pour commencer, Banbiou, l'API SendMessage n'a rien à voir avec VB, c'est une fonction de l'API Windows, qui marche donc avec toutes les applis Windows.

Ensuite, pour entrer le texte dans un control, il faut que tu connaisse le handle de la fenêtre que tu peux trouver avec l'API FindWindow.

Une fois que tu connais ce handle, tu navigue dans les controls de la fenêtre, et tu trouve le handle du control dans lequel tu veux entrer le texte.

Puis, tu fais un SendMessage SETTEXT sur ce handle en lui passant en paramètre ton texte. Et le tour est joué !

Voilà.

Commentaire de banbiou le 29/05/2009 15:01:00

Merci plus qu'à décripter ton message..^^
Si j'ai des soucis je te refais signe si tu veux bien.
Merci en tout cas.

Commentaire de LandTech le 29/05/2009 18:26:24

Salut,

D'accord Banbiou, pas de problème.
Bon courage.

Voilà.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Communication avec un module de capture Easykey en RS485 [ par douds5 ] J'ai un probleme de communciation avec des modules Easykey. A chaque fois que j'envoi une trame j'ai en retour le même trame que j'ai envoyé. Pourtant formulaire qui se comporte comme un mgbox [ par Marquo ] Bonjour,dans un module, j'ai une boucle qui lit ds un fichier, pour chaque ligne lue je veux afficher un formulaire de confirmation(style msgbox) et j Communication PIC 16F84 VB6 par port série [ par Sebcbien06 ] Bonjour,Je voudrais communiquer entre un PIC et Visual basic6 par port série RS232. J'ai essayé d'utiliser MSCOMM control mais sans succés.Quelqun pou pb VBA : réaliser un lien d'une macro vers une autre [ par bogosse121 ] Pour Ecxel, je recherche un moyen de réaliser un lien dans un module à la suite d'une macro vers un autre module pour exécuter une autre macro. Il est module et class module [ par Trainkill666 ] La question peut paraitre bete mais je sais pas la diff entre un module et un class module, form et MDI form, qq peut me renseigner, merci à l'avance Erreur d''execution (module) [ par Robinwood01 ] BonjourJ'ai créer un programme (*.exe). Celui ci marche sur certaine machine mais pas sur toute.Sur une j'ai ce mesage d'erreur :erreur systeme 8:h80 communication inter Application [ par espadon2 ] Bonjour à tous,J' ai une appli vb qui execute une partie d'une autre appli commercial . Cette appli commercial execute un script pour incorporer dans communication via port série RS232 [ par sebastienbothier ] dans le cadre d'une étude, je dois établir une connexion entre un PC et un multimetre via une cable RS232, étant novice en programmation VB, quelqu'un Communication avec le lecteur de code à barre [ par boule7 ] Je voudrais insérer la lecture de code à barre dans mon programme de gestion de point de vente mais je sais pas comment faire. Aidez moi. communication avec un lecteur de code barre [ par twamaya ] Bonjour à tous,j'ai un petit souci, j'ai un lecteur de code barre et j'aimerais bien écrire un petit programme en vb pouvant recuperer les infos lues


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,139 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales