Registrando serviços
Para oferecer suporte a carregamento sob demanda, um provedor de serviços deve registrar seus serviços globais com Visual Studio.
Durante o desenvolvimento, os provedores de serviços gerenciados registram serviços adicionando atributos ao código-fonte e em seguida, executando o utilitário regpkg. exe o assembly resultante. Para obter mais informações, consulte Como: registrar um serviço..
Provedores de serviços não gerenciado devem registrar os serviços prestados com Visual Studio na seção Serviços de registro do sistema. Fragmento de arquivo. reg a seguir mostra como o serviço, SVsTextManager, pode ser registrado:
[HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\<version number>\Services\{F5E7E71D-1401-11d1-883B-0000F87579D2}]
@="{F5E7E720-1401-11d1-883B-0000F87579D2}"
"Name"="SVsTextManager"
No exemplo acima, o número da versão é a versão do Visual Studio, como 7.1 ou 8.0, a chave {F5E7E71D-1401-11d1-883B-0000F87579D2} é o identificador de serviço (SID) do serviço, SVsTextManager, e o valor padrão {F5E7E720-1401-11d1-883B-0000F87579D2} é o GUID do Gerenciador de texto VSPackage, que oferece o serviço de pacote.
Serviços remotos e segmentos de plano de fundo
Serviços que você fornece não ficam disponíveis automaticamente remotamente ou threads de segundo plano. Para disponibilizá-los, você deve criar e registrar uma biblioteca de tipos.
A partir do código não gerenciado que usa a biblioteca de Visual Studio (VSL), você pode registrar a sua biblioteca de tipos dessa forma:
#define VSL_REGISTER_TYPE_LIB TRUE
#include <VSLPackageDllEntryPoints.cpp>
No código gerenciado, você pode adicionar uma etapa de pós-criação como este:
regasm /tlb MyAssembly.dll