Bibliotecas Visual C++ sistema autônomo compartilhada assemblies lado a lado
In Visual C++ 2005, os ATL, MFC, C++ padrão e CRT bibliotecas suporte o novo modelo de implantação disponível no Windows XP, Windows servidor 2003 e Windows Vista. As DLLs correspondentes a todas as bibliotecas do Visual C++ foram agrupadas em vários assemblies lado a lado compartilhados e são instaladas no cache de conjunto de módulos nativo, também chamado de pasta WinSxS, sob o diretório raiz do sistema operacional.Da mesma forma, ao criar um aplicativo C++ usando Visual C++ 2005, por padrão o compilador e vinculador gera um arquivo de manifesto descreve o tempo de execução dependências deste aplicativo em bibliotecas do Visual C++.
Bibliotecas do Visual C++ não podem ser usadas por um aplicativo C/C ++ sem um manifesto de aplicativo para essas bibliotecas de vinculação.Se um aplicativo C/C ++ que depende de uma biblioteca do Visual C++ não usa um manifesto, uma tentativa de carregar a biblioteca do Visual C++ sistema autônomo uma DLL dependente da pasta local de aplicativo resultará em uma mensagem de erro indicando que essa é uma maneira sem suporte de carregar uma biblioteca do Visual C++.
Observação: |
---|
Em versões do Windows que não têm suporte para implantação de conjuntos lado a lado compartilhados, sistema autônomo Windows 98 e Windows 2000 Server, as bibliotecas Visual C++ são instaladas na pasta System32 e pasta WinSxS sob o diretório raiz do sistema operacional. Essa configuração permite que aplicativos Visual C++ em dessas versões de sistema operacional porque não oferecem suporte à vinculação baseada em manifesto de aplicativos para DLLs dependentes.Nesses sistemas operacionais, quando um aplicativo é carregado, o arquivo de manifesto correspondente será ignorado e o sistemas operacionais procura DLLs dependentes usando caminhos conjunto no ambiente corrente em execução.No entanto, ao atualizar o sistema operacional para uma versão que suporta a vinculação baseada em manifesto, sistema autônomo o Windows XP, Windows Server 2003, ou Windows Vista, sistema autônomo aplicativos criados com manifestos de começar a usar sistema autônomo DLLs instaladas na pasta WinSxS. |
Essa alterar para o modelo de implantação do bibliotecas Visual C++ impede que o problema dos conflitos de versão entre as DLLs que ocorrem quando você adiciona atualizações ou configurações para uma computador e permitirá que o suporte de instalação do lado a lado de dois conjuntos de ferramentas diferentes do Visual C++.Ela também permitirá que você produzir aplicativos autodescritivos, confiáveis e componentes que não entrarão em conflito com os componentes existentes.Para obter mais informações sobre as vantagens novo modelo de implantação, consulte Conceitos de aplicativos isolados e assemblies side-by-lado. Para saber mais sobre como isso pode impactar a implantação de aplicativos C++ nativo existentes, consulte Redistribuindo arquivos do Visual C++.
Bibliotecas do Visual C++ tem sido incluídas em vários conjuntos lado a lado compartilhados com arquivos de manifesto correspondentes.
Nome do assembly |
DLLs incluídas no assembly |
O Visual C++ biblioteca |
---|---|---|
Microsoft.VC90.ATL |
atl90.dll |
O ativo modelo biblioteca |
Microsoft.VC90.CRT |
msvcr90.dll msvcp90.dll msvcm90.dll |
C tempo de execução biblioteca DLLs de versão |
Microsoft.VC90.DebugCRT |
msvcr90d.dll msvcp90d.dll msvcm90d.dll |
C tempo de execução biblioteca depurar DLLs |
Microsoft.VC90.MFC |
mfc90.dll mfcm90.dll mfc90u.dll mfcm90u.dll |
DLLs de versão do Microsoft Foundation Classes |
Microsoft.VC90.DebugMFC |
mfc90d.dll mfcm90d.dll mfc90ud.dll mfcm90ud.dll |
Microsoft Foundation Classes, depurar DLLs |
Microsoft.VC90.MFCLOC |
mfc90chs.dll mfc90deu.dll mfc90esp.dll mfc90ita.dll mfc90kor.dll mfc90cht.dll mfc90enu.dll mfc90fra.dll mfc90jpn.dll |
Microsoft Foundation Classes, recursos localizados |
Microsoft.VC90.OpenMP |
vcomp.dll |
OpenMP biblioteca, solte a DLLs |
Microsoft.VC90.DebugOpenMP |
Vcompd.dll |
OpenMP biblioteca, depurar DLLs |
Quando você cria aplicativos com Visual C++ 2008, você talvez precise redistribuir bibliotecas Visual C++ e implantar as DLLs correspondentes nas áreas de trabalho dos clientes. Para obter mais informações consulte Implantação (C++).