У меня есть ac # -dll, и регистрация через regasm говорит мне об успехе, но GUID не были добавлены в реестр, и поэтому компонент нигде не может быть использован.и я просто не знаю, почему: (
атрибуты класса:
[ProgId( "blup" )]
[ClassInterface( ClassInterfaceType.None ), ComSourceInterfaces( typeof( blap ))]
[Guid( "0CFEF92B-A155-4353-B7A3-58A717193E0C" )]
[ComVisible( true )]
public class blup
...
атрибуты интерфейса:
[Guid( "9FD1B3E5-4873-403a-91AA-2EEC7296B38D" )]
[InterfaceType( ComInterfaceType.InterfaceIsIDispatch )]
[ComVisible ( true )]
public interface blap
...
assemblyInfo.cs:
...
[assembly: ComVisible( true )]
[assembly: Guid("37639A04-9DAC-40ee-ADBB-2F07F78FD265")]
...
опция, чтобы сделать сборку видимой, установлена в true. Регистрация для com-interop ist установлена в false, поскольку я не хочу, чтобы она регистрировалась в каждой сборке.
регистрация через regasm / codebase -> успех. регистрация через regasm / codebase / tlb -> success.
, но в обоих случаях я не могу найти ни один из моих GUID в реестре.
добавив параметр / regfile вregasm, файл генерируется, но состоит только из следующих строк:
[HKEY_CLASSES_ROOT\Record\{D4DAB0A5-AC0A-3498-BD1E-6665735B5649}\1.3.3.7]
"Class"="<classname>+eventType"
"Assembly"="<name>, Version=1.3.3.7, Culture=neutral, PublicKeyToken=bba2258cd5ab986c"
"RuntimeVersion"="v2.0.50727"
"CodeBase"="file:///<filename>"
GUID из regfile нигде не используется в vs-проекте. Все это работает - точнее, нет работает - с Visual Studio 2008 на Windows 7 64.
спасибо за любые советы заранее. Если я пропустил, чтобы дать некоторую информацию, пожалуйста, дайте мне знать!