J'ai une application (A) qui a besoin de lancer une autre application (B). J'ai besoin de transmettre des données entre les applications. Je peux penser à deux approches. Le premier est d'ouvrir une socket. Le second est de partager des données via une DLL.Quelle est la manière préférée de transmettre des données entre deux applications sur le même système?
L'approche de la douille d'ouverture est simple.
L'approche dll J'ai quelques questions? Je peux charger des DLL de plug-in dans B. Je veux créer une DLL que A peut utiliser pour transmettre des données à B. Lors du chargement des DLL, une seule instance de la DLL est-elle chargée? Si oui, cela signifie-t-il que les données peuvent être partagées entre les applications qui chargent la DLL?
Quel est le meilleur choix?
Y a-t-il d'autres façons de procéder?
Quel est le problème de partage de données via une DLL? – zooropa
@zoo Il est très difficile de contrôler, ne fonctionne pas si la DLL est déchargée et nécessite une compilation spéciale de la DLL - les données dans les DLL ne sont pas partagées par défaut. –
regardez dans #pragma data_seg pour plus d'informations sur le partage de données entre dll –