OVH Cloud OVH Cloud

VC8 et dependances

9 réponses
Avatar
Thierry
'jour,

J'ai 3 services en console et compil=E9s en debug. Aleatoirement et pour
chacun des projets, il manque une d=E9pendance vers MSVCRT80D.dll
(pr=E9sente dans
C:\WINDOWS\WinSxS\x86_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50727.42=
_x-ww_f75eb16c).
(vu avec depends)

Au bout de n nettoyages/rebuild ca remarche.

Quelqu'un a deja eu ce probleme ?

9 réponses

Avatar
Remi THOMAS
Thierry wrote:
'jour,

J'ai 3 services en console et compilés en debug. Aleatoirement et pour
chacun des projets, il manque une dépendance vers MSVCRT80D.dll
(présente dans
C:WINDOWSWinSxSx86_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_f75eb16c).
(vu avec depends)

Au bout de n nettoyages/rebuild ca remarche.

Quelqu'un a deja eu ce probleme ?




Bonjour,

MSVCRT80D.dll est utilisé quand tu choisis un "code generation" de type
DLL (par exemple Multi-threaded Debug DLL (/MDd)).
En jouant sur ce paramètre tu as besoin de msvcrt80 ou pas.
Cette DLL est obligatoire pour les projets C++ CLI.

Rémi
Avatar
Thierry
Remi THOMAS a écrit :

MSVCRT80D.dll est utilisé quand tu choisis un "code generation" de type
DLL (par exemple Multi-threaded Debug DLL (/MDd)).
En jouant sur ce paramètre tu as besoin de msvcrt80 ou pas.
Cette DLL est obligatoire pour les projets C++ CLI.



J'entends bien, mais ce qui est etonnant c'est que d'un build a
l'autre, avec une même conf, il y a une erreur de dependance de cette
DLL pour l'exe generé.
Avatar
Thierry
Thierry a écrit :

il y a une erreur de dependance de cette DLL pour l'exe generé.



La DLL n'est pas "trouvée", ce n'est pas un probleme de symboles
isolés qui ne serait pas définis dans la DLL.
Avatar
Arnaud Debaene
"Thierry" a écrit dans le message de news:


J'entends bien, mais ce qui est etonnant c'est que d'un build a
l'autre, avec une même conf, il y a une erreur de dependance de cette
DLL pour l'exe generé.



C'est quoi le mesage d'erreur exact?

Arnaud
MVP - VC
Avatar
Thierry
Arnaud Debaene a écrit :

"Thierry" a écrit dans le message de news:


> J'entends bien, mais ce qui est etonnant c'est que d'un build a
> l'autre, avec une même conf, il y a une erreur de dependance de cette
> DLL pour l'exe generé.

C'est quoi le mesage d'erreur exact?



1053 en service, sinon : "cette application n'a pas pu demarrer car
MSVCR80D est introuvable."
Avatar
Dominique Vaufreydaz
Bonjour,

1053 en service, sinon : "cette application n'a pas pu demarrer car
MSVCR80D est introuvable."



Compilé en mode debug avec visual studio recent. Ne fonctionnera
pas sur une machine ou y'a pas cette DLL et ses petites soeurs (peut-etre).

Refaire la compil en release pour voir sir le probleme persiste.

Doms.
Avatar
Thierry
Dominique Vaufreydaz a écrit :

Bonjour,

> 1053 en service, sinon : "cette application n'a pas pu demarrer car
> MSVCR80D est introuvable."

Compilé en mode debug avec visual studio recent. Ne fonctionnera
pas sur une machine ou y'a pas cette DLL et ses petites soeurs (peut- etre).



Ca je sais, merci. Mais ce que j'aimerais savoir, c'est pourquoi, sur
la machine de dev avec VC8, une même conf de projet, le même code
source, pourquoi anarchiquement il y a ce pb de dependance et quoi
bout de n regeneration le pb disparait.
Avatar
Arnaud Debaene
"Thierry" a écrit dans le message de news:


C'est quoi le mesage d'erreur exact?





1053 en service, sinon : "cette application n'a pas pu demarrer car
MSVCR80D est introuvable."



Ah! Donc c'est un problème à l'exécution, pas à la compilation comme tu
semblais le dire.
msvcrt80d.dll est une DLL avec un manifest, ce qui veux dire que
normalement, elle est installée en "side-by-side" si tu es sous Windows XP.
D'après ton 1er message, c'est le cas.

J'aurais tendance à soupçonner un problème dans le génération et l'édition
de liens du manifest de ton application. Tu compiles comment? sous l'IDE ou
en ligne de commande? C'est un projet upgradé depuis Visual 2003?

Pour plus de détails sur les manifests, voire
http://windowssdk.msdn.microsoft.com/en-us/library/ms235532.aspx et les
articles associés. Vérifies tes options de compilation par rapport aux infos
dans ces articles.

Arnaud
MVP - VC
Avatar
Thierry
Arnaud Debaene wrote:

Ah! Donc c'est un problème à l'exécution, pas à la compilation comme tu
semblais le dire.



J'ai parlé de build, donc compil + link.

J'aurais tendance à soupçonner un problème dans le génération et l'édition
de liens du manifest de ton application. Tu compiles comment? sous l'IDE
ou en ligne de commande? C'est un projet upgradé depuis Visual 2003?



C'est un projet "console" from scratch sous VC8 (IDE), n'utilisant pas CLR.

Pour plus de détails sur les manifests, voire
http://windowssdk.msdn.microsoft.com/en-us/library/ms235532.aspx et les
articles associés. Vérifies tes options de compilation par rapport aux
infos dans ces articles.



Ok, merci.