Почему regasm.exe регистрирует мой c# блок в неправильном GUID?

11
задан Blorgbeard 29 September 2008 в 05:56
поделиться

3 ответа

GUID в AssemblyInfo становится "Библиотекой типов" GUID и обычно не то, что Вы искали бы. Я собираюсь предположить, что Вы пытаетесь получить доступ к классу, и необходимо определить атрибут Гуида и ComVisible для класса. Например:

[Guid("00001111-2222-3333-4444-555566667777"), ComVisible(true)]    
public class MyCOMRegisteredClass

Если Вы не сделаете, то класс любой a) не будет зарегистрирован, или b) если Вы определили COMVisible (верный) на уровне ассемблера, будет присвоен гуид, который.NET печет для Вас.

12
ответ дан 3 December 2019 в 08:31
поделиться

По всей вероятности Вы имеете копию того же (старая версия) dll где-нибудь в Вашей системе, поисковом диске для копий того же файла и удаляете (копируют) их вручную прежде, чем зарегистрировать новую копию.

1
ответ дан 3 December 2019 в 08:31
поделиться

Возможно, у Вас есть старая версия блока где-нибудь? Возможно, в GAC? Regasm, вероятно, берет это и использует его.

1
ответ дан 3 December 2019 в 08:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: