2008-09-30 20 views
3

Si vous appelez LoadLibrary sans chemin d'accès (par exemple, LoadLibrary("whatever.dll"), Windows suit généralement son algorithme de recherche standard, le même qu'il utilise pour trouver EXEschemin Windows recherche dans LoadLibrary avec manifeste

Ma question est la suivante:. Supposons qu'un manifeste d'application spécifie spécifie une version particulière d'une DLL système, par exemple, comctl32.dll 6.0 Dans ce cas, LoadLibrary("comctl32.dll") ira-t-il immédiatement au bon dossier côte à côte, ou effectue-t-il toujours une sorte de recherche?

Répondre

5

De Microsoft:

Les applications peuvent contrôler l'emplacement à partir duquel une DLL est chargée en spécifiant un chemin d'accès complet, en utilisant la redirection DLL ou en utilisant un manifeste. Si aucune de ces méthodes n'est utilisée, le système recherche la DLL au moment du chargement, comme décrit dans cette rubrique.

Alors oui, si un manifeste est présent, il ira directement dans le dossier SxS.