Fabien SK wrote:Arggggg ! Quand je dis "statiquement", c'est que ton module a besoin
de XXX.dll pour se charger. Quand tu fais un "Dependancy Walker"
(http://www.dependencywalker.com/), tu vois bien que ton programme a
besoin de telle ou telle DLL pour être chargé par le système. Bien
sûr, on n'inclut pas le code des DLLs tierces dans son programme
(sinon çà ne s'appellerait pas des DLLs).
Hem, t'es sûr là ? Statique c'est l'inverse de ce que tu dis. Toi, ce que tu
nous décrit c'est du dynamique...
Fabien SK wrote:
Arggggg ! Quand je dis "statiquement", c'est que ton module a besoin
de XXX.dll pour se charger. Quand tu fais un "Dependancy Walker"
(http://www.dependencywalker.com/), tu vois bien que ton programme a
besoin de telle ou telle DLL pour être chargé par le système. Bien
sûr, on n'inclut pas le code des DLLs tierces dans son programme
(sinon çà ne s'appellerait pas des DLLs).
Hem, t'es sûr là ? Statique c'est l'inverse de ce que tu dis. Toi, ce que tu
nous décrit c'est du dynamique...
Fabien SK wrote:Arggggg ! Quand je dis "statiquement", c'est que ton module a besoin
de XXX.dll pour se charger. Quand tu fais un "Dependancy Walker"
(http://www.dependencywalker.com/), tu vois bien que ton programme a
besoin de telle ou telle DLL pour être chargé par le système. Bien
sûr, on n'inclut pas le code des DLLs tierces dans son programme
(sinon çà ne s'appellerait pas des DLLs).
Hem, t'es sûr là ? Statique c'est l'inverse de ce que tu dis. Toi, ce que tu
nous décrit c'est du dynamique...
> C'est vous qui l'avez donné le prototype ! et je ne vois pas en quoi il
n'est pas conforme.
la convention d'appel c'est réglé, c'est du "stdcall" et y'a pas
d'inderterminé la dessus.
> C'est vous qui l'avez donné le prototype ! et je ne vois pas en quoi il
n'est pas conforme.
la convention d'appel c'est réglé, c'est du "stdcall" et y'a pas
d'inderterminé la dessus.
> C'est vous qui l'avez donné le prototype ! et je ne vois pas en quoi il
n'est pas conforme.
la convention d'appel c'est réglé, c'est du "stdcall" et y'a pas
d'inderterminé la dessus.
AMcD wrote:
> Fabien SK wrote:
>
>
>>Arggggg ! Quand je dis "statiquement", c'est que ton module a besoin
>>de XXX.dll pour se charger. Quand tu fais un "Dependancy Walker"
>>(http://www.dependencywalker.com/), tu vois bien que ton programme a
>>besoin de telle ou telle DLL pour être chargé par le système. Bien
>>sûr, on n'inclut pas le code des DLLs tierces dans son programme
>>(sinon çà ne s'appellerait pas des DLLs).
>
>
> Hem, t'es sûr là ? Statique c'est l'inverse de ce que tu dis. Toi, ce
> nous décrit c'est du dynamique...
Comment nommes-tu le fait d'utiliser une DLL:
- en spécifiant au link la liaison entre ton programme et la DLL ?
(chargement de la DLL lors de la création du process par le système)
- en chargeant la DLL avec "LoadLibrary" ? (chargement de la DLL pendant
l'exécution du programme)
Moi je n'ai pas d'autres mots pour dire ça. D'un coté la dépendance est
statique, et de l'autre non. Si tu as une autre manière de dire ça, je
suis preneur.
AMcD wrote:
> Fabien SK wrote:
>
>
>>Arggggg ! Quand je dis "statiquement", c'est que ton module a besoin
>>de XXX.dll pour se charger. Quand tu fais un "Dependancy Walker"
>>(http://www.dependencywalker.com/), tu vois bien que ton programme a
>>besoin de telle ou telle DLL pour être chargé par le système. Bien
>>sûr, on n'inclut pas le code des DLLs tierces dans son programme
>>(sinon çà ne s'appellerait pas des DLLs).
>
>
> Hem, t'es sûr là ? Statique c'est l'inverse de ce que tu dis. Toi, ce
> nous décrit c'est du dynamique...
Comment nommes-tu le fait d'utiliser une DLL:
- en spécifiant au link la liaison entre ton programme et la DLL ?
(chargement de la DLL lors de la création du process par le système)
- en chargeant la DLL avec "LoadLibrary" ? (chargement de la DLL pendant
l'exécution du programme)
Moi je n'ai pas d'autres mots pour dire ça. D'un coté la dépendance est
statique, et de l'autre non. Si tu as une autre manière de dire ça, je
suis preneur.
AMcD wrote:
> Fabien SK wrote:
>
>
>>Arggggg ! Quand je dis "statiquement", c'est que ton module a besoin
>>de XXX.dll pour se charger. Quand tu fais un "Dependancy Walker"
>>(http://www.dependencywalker.com/), tu vois bien que ton programme a
>>besoin de telle ou telle DLL pour être chargé par le système. Bien
>>sûr, on n'inclut pas le code des DLLs tierces dans son programme
>>(sinon çà ne s'appellerait pas des DLLs).
>
>
> Hem, t'es sûr là ? Statique c'est l'inverse de ce que tu dis. Toi, ce
> nous décrit c'est du dynamique...
Comment nommes-tu le fait d'utiliser une DLL:
- en spécifiant au link la liaison entre ton programme et la DLL ?
(chargement de la DLL lors de la création du process par le système)
- en chargeant la DLL avec "LoadLibrary" ? (chargement de la DLL pendant
l'exécution du programme)
Moi je n'ai pas d'autres mots pour dire ça. D'un coté la dépendance est
statique, et de l'autre non. Si tu as une autre manière de dire ça, je
suis preneur.
Comment nommes-tu le fait d'utiliser une DLL:
- en spécifiant au link la liaison entre ton programme et la DLL ?
(chargement de la DLL lors de la création du process par le système)
- en chargeant la DLL avec "LoadLibrary" ? (chargement de la DLL pendant
l'exécution du programme)
Comment nommes-tu le fait d'utiliser une DLL:
- en spécifiant au link la liaison entre ton programme et la DLL ?
(chargement de la DLL lors de la création du process par le système)
- en chargeant la DLL avec "LoadLibrary" ? (chargement de la DLL pendant
l'exécution du programme)
Comment nommes-tu le fait d'utiliser une DLL:
- en spécifiant au link la liaison entre ton programme et la DLL ?
(chargement de la DLL lors de la création du process par le système)
- en chargeant la DLL avec "LoadLibrary" ? (chargement de la DLL pendant
l'exécution du programme)
> C'est vous qui l'avez donné le prototype ! et je ne vois pas en quoi il
> n'est pas conforme.
> la convention d'appel c'est réglé, c'est du "stdcall" et y'a pas
> d'inderterminé la dessus.
>
C'est bon, j'ai un exemple qui marche avec Visual C++ 6 (compilé en C).
__declspec(dllimport) struct HINSTANCE__* __stdcall LoadLibraryA(const
char*);
int main(int argc, char *argv[])
{
void *ptr = LoadLibraryA("kernel32.dll");
return 0;
}
> C'est vous qui l'avez donné le prototype ! et je ne vois pas en quoi il
> n'est pas conforme.
> la convention d'appel c'est réglé, c'est du "stdcall" et y'a pas
> d'inderterminé la dessus.
>
C'est bon, j'ai un exemple qui marche avec Visual C++ 6 (compilé en C).
__declspec(dllimport) struct HINSTANCE__* __stdcall LoadLibraryA(const
char*);
int main(int argc, char *argv[])
{
void *ptr = LoadLibraryA("kernel32.dll");
return 0;
}
> C'est vous qui l'avez donné le prototype ! et je ne vois pas en quoi il
> n'est pas conforme.
> la convention d'appel c'est réglé, c'est du "stdcall" et y'a pas
> d'inderterminé la dessus.
>
C'est bon, j'ai un exemple qui marche avec Visual C++ 6 (compilé en C).
__declspec(dllimport) struct HINSTANCE__* __stdcall LoadLibraryA(const
char*);
int main(int argc, char *argv[])
{
void *ptr = LoadLibraryA("kernel32.dll");
return 0;
}
>>Comment nommes-tu le fait d'utiliser une DLL:
- en spécifiant au link la liaison entre ton programme et la DLL ?
(chargement de la DLL lors de la création du process par le système)
- en chargeant la DLL avec "LoadLibrary" ? (chargement de la DLL pendant
l'exécution du programme)
Moi je n'ai pas d'autres mots pour dire ça. D'un coté la dépendance est
statique, et de l'autre non. Si tu as une autre manière de dire ça, je
suis preneur.
la dépendance est forcément statique, puisqu'on est bien obligé de stipuler
cette dépendance dans le programme qui en a besoin. Mais le Link est
dynamique dans le sens où le code n'est pas inclu dans le programme d'une
part, et le lien explicite est réalisé par le système d'exploitation au
lancement du programme (pas par le Linker), d'autre part.
>>Comment nommes-tu le fait d'utiliser une DLL:
- en spécifiant au link la liaison entre ton programme et la DLL ?
(chargement de la DLL lors de la création du process par le système)
- en chargeant la DLL avec "LoadLibrary" ? (chargement de la DLL pendant
l'exécution du programme)
Moi je n'ai pas d'autres mots pour dire ça. D'un coté la dépendance est
statique, et de l'autre non. Si tu as une autre manière de dire ça, je
suis preneur.
la dépendance est forcément statique, puisqu'on est bien obligé de stipuler
cette dépendance dans le programme qui en a besoin. Mais le Link est
dynamique dans le sens où le code n'est pas inclu dans le programme d'une
part, et le lien explicite est réalisé par le système d'exploitation au
lancement du programme (pas par le Linker), d'autre part.
>>Comment nommes-tu le fait d'utiliser une DLL:
- en spécifiant au link la liaison entre ton programme et la DLL ?
(chargement de la DLL lors de la création du process par le système)
- en chargeant la DLL avec "LoadLibrary" ? (chargement de la DLL pendant
l'exécution du programme)
Moi je n'ai pas d'autres mots pour dire ça. D'un coté la dépendance est
statique, et de l'autre non. Si tu as une autre manière de dire ça, je
suis preneur.
la dépendance est forcément statique, puisqu'on est bien obligé de stipuler
cette dépendance dans le programme qui en a besoin. Mais le Link est
dynamique dans le sens où le code n'est pas inclu dans le programme d'une
part, et le lien explicite est réalisé par le système d'exploitation au
lancement du programme (pas par le Linker), d'autre part.
Fabien SK wrote:Arggggg ! Quand je dis "statiquement", c'est que ton module a besoin
de XXX.dll pour se charger. Quand tu fais un "Dependancy Walker"
(http://www.dependencywalker.com/), tu vois bien que ton programme a
besoin de telle ou telle DLL pour être chargé par le système. Bien
sûr, on n'inclut pas le code des DLLs tierces dans son programme
(sinon çà ne s'appellerait pas des DLLs).
Hem, t'es sûr là ? Statique c'est l'inverse de ce que tu dis. Toi, ce que tu
nous décrit c'est du dynamique...
Fabien SK wrote:
Arggggg ! Quand je dis "statiquement", c'est que ton module a besoin
de XXX.dll pour se charger. Quand tu fais un "Dependancy Walker"
(http://www.dependencywalker.com/), tu vois bien que ton programme a
besoin de telle ou telle DLL pour être chargé par le système. Bien
sûr, on n'inclut pas le code des DLLs tierces dans son programme
(sinon çà ne s'appellerait pas des DLLs).
Hem, t'es sûr là ? Statique c'est l'inverse de ce que tu dis. Toi, ce que tu
nous décrit c'est du dynamique...
Fabien SK wrote:Arggggg ! Quand je dis "statiquement", c'est que ton module a besoin
de XXX.dll pour se charger. Quand tu fais un "Dependancy Walker"
(http://www.dependencywalker.com/), tu vois bien que ton programme a
besoin de telle ou telle DLL pour être chargé par le système. Bien
sûr, on n'inclut pas le code des DLLs tierces dans son programme
(sinon çà ne s'appellerait pas des DLLs).
Hem, t'es sûr là ? Statique c'est l'inverse de ce que tu dis. Toi, ce que tu
nous décrit c'est du dynamique...
"Fabien SK" <fabsk+ wrote in message
news:3f8cf691$0$13299$C'est vous qui l'avez donné le prototype ! et je ne vois pas en quoi il
n'est pas conforme.
la convention d'appel c'est réglé, c'est du "stdcall" et y'a pas
d'inderterminé la dessus.
C'est bon, j'ai un exemple qui marche avec Visual C++ 6 (compilé en C).
__declspec(dllimport) struct HINSTANCE__* __stdcall LoadLibraryA(const
char*);
int main(int argc, char *argv[])
{
void *ptr = LoadLibraryA("kernel32.dll");
return 0;
}
Ha ben oui sur LoadLibrary y'a plusieurs fonction, il faut prendre la bonne.
Mais je croyais qu'on parlais de GetProcAddress (là y'a qu'un fonction).
"Fabien SK" <fabsk+news@free.fr> wrote in message
news:3f8cf691$0$13299$626a54ce@news.free.fr...
C'est vous qui l'avez donné le prototype ! et je ne vois pas en quoi il
n'est pas conforme.
la convention d'appel c'est réglé, c'est du "stdcall" et y'a pas
d'inderterminé la dessus.
C'est bon, j'ai un exemple qui marche avec Visual C++ 6 (compilé en C).
__declspec(dllimport) struct HINSTANCE__* __stdcall LoadLibraryA(const
char*);
int main(int argc, char *argv[])
{
void *ptr = LoadLibraryA("kernel32.dll");
return 0;
}
Ha ben oui sur LoadLibrary y'a plusieurs fonction, il faut prendre la bonne.
Mais je croyais qu'on parlais de GetProcAddress (là y'a qu'un fonction).
"Fabien SK" <fabsk+ wrote in message
news:3f8cf691$0$13299$C'est vous qui l'avez donné le prototype ! et je ne vois pas en quoi il
n'est pas conforme.
la convention d'appel c'est réglé, c'est du "stdcall" et y'a pas
d'inderterminé la dessus.
C'est bon, j'ai un exemple qui marche avec Visual C++ 6 (compilé en C).
__declspec(dllimport) struct HINSTANCE__* __stdcall LoadLibraryA(const
char*);
int main(int argc, char *argv[])
{
void *ptr = LoadLibraryA("kernel32.dll");
return 0;
}
Ha ben oui sur LoadLibrary y'a plusieurs fonction, il faut prendre la bonne.
Mais je croyais qu'on parlais de GetProcAddress (là y'a qu'un fonction).
C'est une application qui sera distribuée avec le compilateur CPP de Borland
car elle sera capable de créér des dll puis de les utilisées juste après
(une sorte de plug'in) les fonctions disponibles dans ces dll seront
appelées par le couple LoadLibrary/GetProcAddress indirectement par le
programme puisqu'il ne peut connaitre avant le nom des dll et des fonctions
de ce fait je créée un DLL charnière "sur mesure" appelant les dll deja
existantes puis executant les nouvelles fonctions de l'utilisateurs.
C'est une application qui sera distribuée avec le compilateur CPP de Borland
car elle sera capable de créér des dll puis de les utilisées juste après
(une sorte de plug'in) les fonctions disponibles dans ces dll seront
appelées par le couple LoadLibrary/GetProcAddress indirectement par le
programme puisqu'il ne peut connaitre avant le nom des dll et des fonctions
de ce fait je créée un DLL charnière "sur mesure" appelant les dll deja
existantes puis executant les nouvelles fonctions de l'utilisateurs.
C'est une application qui sera distribuée avec le compilateur CPP de Borland
car elle sera capable de créér des dll puis de les utilisées juste après
(une sorte de plug'in) les fonctions disponibles dans ces dll seront
appelées par le couple LoadLibrary/GetProcAddress indirectement par le
programme puisqu'il ne peut connaitre avant le nom des dll et des fonctions
de ce fait je créée un DLL charnière "sur mesure" appelant les dll deja
existantes puis executant les nouvelles fonctions de l'utilisateurs.
> A moins que tes DLLs plugins aient besoin d'appeler LoadLibray, il n'y
a pas de problèmes, ou alors j'ai rien comris à ce que tu veux
faire....
Arnaud
> A moins que tes DLLs plugins aient besoin d'appeler LoadLibray, il n'y
a pas de problèmes, ou alors j'ai rien comris à ce que tu veux
faire....
Arnaud
> A moins que tes DLLs plugins aient besoin d'appeler LoadLibray, il n'y
a pas de problèmes, ou alors j'ai rien comris à ce que tu veux
faire....
Arnaud