.NET から COM を使う

  C#



VB.NET であれば、CreateObject が利用できますが、それでは古いコードとなってしまいますので、
.NET 共通な方法で実装します

※ サンプルとして、Basp21 のメール送信でテストしました
Basp21.tlb は、タイプライブラリです

Visual Studio の SDK の tlbimp.exe でアセンブリを作成する
( ※ com 作成時に namespace を定義していた場合は、/namespace は必要無いと思われます )
  
C#>tlbimp /namespace:myCom C:\WINNT\system32\Basp21.tlb
Microsoft (R) .NET Framework Type Library to Assembly Converter 2.0.50727.42
Copyright (C) Microsoft Corporation.  All rights reserved.

Type library imported to BASP21Lib.dll
  

useCom.cs
  
using System;
using myCom;

// ********************************************************
// * 実行
// ********************************************************
public class App
{

	public static void Main() {

		Basp21 basp = new Basp21();

		String str = basp.SendMail(
			"SMTPサーバー:587",
			"宛先メールアドレス",
			"差出人メールアドレス\tユーザ:パスワード",
			"日本語表示", "日本語表示", "" );

		Console.WriteLine(str);

		Console.WriteLine("処理が終了しました");
	}

}
  

useCom.cs のビルド
  
csc /reference:.\BASP21Lib.dll useCom.cs
  



  VB.NET



  
Imports myCom

Module Module1

	Sub Main()

		Dim basp As Basp21 = New Basp21()

		Dim str As String = basp.SendMail( _
			"SMTPサーバー:587", _
			"宛先メールアドレス", _
			"差出人メールアドレス" & vbTab & "ユーザ:パスワード", _
			"日本語表示", "日本語表示", "" );

		Console.WriteLine(str)

		Console.WriteLine("処理が終了しました")

	End Sub

End Module
  

  
vbc /reference:.\BASP21Lib.dll useCom.bas
  



  Jscript.NET

  
import System;
import myCom;

var basp : Basp21 = new Basp21();

var str : String = basp.SendMail( 
	"SMTPサーバー:587",
	"宛先メールアドレス",
	"差出人メールアドレス\tユーザ:パスワード",
	"日本語表示", "日本語表示", "" );

Console.WriteLine(str);

Console.WriteLine("処理が終了しました");
  

  
jsc /reference:.\BASP21Lib.dll sample.js
  



  VB.NET + CreateObject

  
Module Module1

	Sub Main()

		Dim basp As Object = CreateObject("Basp21")

		String str = basp.SendMail(
			"SMTPサーバー:587",
			"宛先メールアドレス",
			"差出人メールアドレス\tユーザ:パスワード",
			"日本語表示", "日本語表示", "" );

		Console.WriteLine(str)

		Console.WriteLine("処理が終了しました")

	End Sub

End Module
  



  関連リンク

【.NET】 プライベートクラスライブラリとその配置方法

言語別バッチビルドセット











  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ