2010-11-30 19 views

cevap

11

Bunu yapmanın en kolay yolu, VB6 kodunu ActiveX DLL olarak derlemektir. Sonra .net projenizdeki DLL'yi referans alabilirsiniz. (Visual Studio, ActiveX DLL'lerini düzgün bir şekilde referans alabilir.)

+2

+1. VB6'da bir ActiveX DLL oluşturmaya yönelik adım adım talimatlar [burada] (http://stackoverflow.com/questions/3477265/com-dll-in-vb6/3477344#3477344) ve orada bir [iyi eğitim] VB6 kılavuzu] (http://msdn.microsoft.com/en-us/library/aa229332%28v=VS.60%29.aspx). Sonra sadece C# projenizdeki VB6 ActiveX DLL dosyasını referans alın - Referans Ekle iletişim kutusunun COM sekmesinde listelenecektir. – MarkJ

2

Evet. Bu mümkün. Visual Basic'te yazılmış bir yöntemi çağırdığınız gibi adlandırın. Derleme için bir referansa ihtiyacınız var ve sonra onu sadece doğru ad alanıyla çağırıyorsunuz.

+1

VB6 u

karşılama/vb6 dll kullanımı regsvr32 "Ad ve yolu" kaydını silmek için ve NET meta yaymaz. –

+0

VB6.0'ın bu şekilde kullanılabileceğinden emin misiniz ?? –

+0

@Saeed: Sorunun, orijinal olarak VB sürümü hakkında spesifik olmadığını düşünüyor. –

2

Yalnızca VB6 kodunun bir COM sunucusu olarak derlenmesi durumunda mümkündür.

+0

VB6'da COM sunucusu olarak derlemek için bir seçenek var mı? VB6.0'ım yoktu ama sanırım düşündüğünüz kadar kolay değil. –

+0

@Saeed: Aslında oldukça basit.Proje seçeneklerinde bir onay kutusu var, o zaman söz konusu işlevin bir kod modülünde değil, bir sınıf modülünde bir yöntem olduğundan emin olmalısınız (ve sınıf modülünün özel olmadığından emin olun). Kesinlikle emin olamam çünkü uzun bir zaman geçti, ama bence bu gereken her şey. –

+0

VB6 CODE'yi derlemek için COM sunucusunu nasıl alabilirim – ratty

2

.NET, VB6 DLL'nizi herhangi bir COM DLL'si gibi kullanabilir.

"Referans ekle" ye tıklamanız yeterlidir, ardından DLL dosyanızın kayıtlı olması durumunda "COM" Sekmesini seçin ya da dosyayı doğrudan seçmek için "Gözat" Sekmesine tıklayın.

COM uyumluysa, Visual Studio otomatik olarak VB6 DLL'nize .NET sarıcı olarak davranacak bir COM Interop Assembly oluşturacaktır.

VB6 dll'nizi ve Interop derlemenizi programınızla birlikte dağıtmanız gerekecektir.

6
  1. kullanarak Kayıt ActiveX DLL olarak VB6 DLL derlemek -. (Kayıt Çalıştır iletişim kullanmak veya Komut İstemi)> regsvr32 "Tam Adı Ve yeni derlenen vb6 dll Yolu"

  2. In .net Yeniden ekle - seçin com sekmesini seçin ve yeni kayıtlı dll'yi arayın

  3. Artık bu dll'yi kullanabilirsiniz.

Not: vb6 kodunda herhangi bir değişiklik yapmak her

, yine yukarıdaki adımları takip etmek gerekir.

derlemeler yaratmaz (dll) cehennem

İlgili konular