2012-09-20 28 views
11

COM gibi bir dahili vb projeyi kullanan bir C# projem var.COM kullanarak kayıt defterinden Load sınıfı, ToolsVersion = "2.0" ile çalışır, ancak ToolsVersion = "4.0" ile sıfırlanır

Ben VS 2010 projeyi dönüştürüldüğünde aşağıdaki satırı bana bir istisna atmak:

Set RTCClient_ = New RTCCORELib.RTCClient 

RTCCore.RTCClient Microsoft parçası da yükleme içine gömülü olabilir RTC (RTC istemci API 1.2) için Modülü Birleştirme olduğu paket (Bu benim durumumda EXE içerir).

ERROR: Automation error
The specified module could not be found. (-2147024770)

Ama benim csproj değişen ve olursam ToolsVersion="2.0" Yukarıdaki satır kullanarak:

RTCCore.RTCClient

olduğunu HKEY_CLASSES_ROOT\RTCCore.RTCClient

alıyorum hata altında kayıt defterine kaydediliyor sınıftır Çalışır ve RTCClient nesnesini alabilirim.

Sorun nasıl görünüyor?

+1

Eğer ben sorunuza eksik bazı bilgiler olduğunu düşünüyorum C# – Cynede

+0

adresinin COM nesnesi arayın nasıl gösterebilir. Lütfen RTCCORELib.RTCClient'in ne olduğunu açıklayınız; VB projesinin kendisinin bir COM sunucusu uygulayıp uygulamadığını onaylayın; C# projesinin rolünü ve bu VB koduyla özel olarak nasıl ilişkili olduğunu açıklar. –

+0

"VB projesinin bir COM sunucusu uygulayıp uygulamadığını ve C# projesinin rolünü ve özellikle bu VB koduyla nasıl ilişkili olduğunu açıklayın" - Bunu hala düzenlediğiniz soruda göremiyorum. –

cevap

1

Embed Interop Türlerini projedeki COM kitaplığınızın referans özelliklerinde false olarak ayarlamayı deneyin. Benimki C#, ama VB.Net'in de buna sahip olabilir.

Properties window

İlgili konular