kopierreko
Messages postés139Date d'inscriptionmercredi 12 mars 2008StatutMembreDernière intervention10 juillet 2010 12 sept. 2009 à 14:03
La version de la Dll changera p-e mais je me connecte à ma propre base de donnée qui ne change pas de version. Et il faut absolument que je le réunisse en un seul exécutable, s'il y a moyen.
Oui j'ai normalement le droit de la diffuser puisqu'elle est en téléchargement partout.
D'avance Merci
cs_47
Messages postés197Date d'inscriptionmardi 20 janvier 2004StatutMembreDernière intervention20 février 20131 13 sept. 2009 à 00:27
Bonsoir,
"Oui j'ai normalement le droit de la diffuser puisqu'elle est en téléchargement partout. "
ça dépend, si c'est un projet open source avec code livré (sous licence GPL ou une approuvée par l'OSI) pas de soucis
si ton application n'est pas dans ce cas, il y a une licence commerciale...
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 201610 14 sept. 2009 à 07:36
J'ai détaillé dans mon premier message.
1. Créer une unité "DynamicDLL". Dans cette unité, tu vas lier ta DLL (une fois extraite de ton executable). Et cette unité détachera aussi la DLL une fois qu'on n'en a plus besoin. Mots clés : LoadLibrary, GetProcAddress, CloseHandle.
2. Définir une fonction "ExtractDLL", qui va extraire la DLL de ton exécutable, dans un dossier temporaire. Mots clés : TMemoryStream, GetTempDir.
3. Au démarrage de ton application, lancer ExtractDLL, puis faire tourner l'unité "DynamicDLL".
4. Eventuellement, supprimer la DLL à la fin de l'exécution de ton programme. Mot clé : DeleteFile. (pense à détacher ta DLL de ton application avant de supprimer la DLL !).