N-階層開発モード(COM +コンポーネントを記述するためにVB.NETの使用方法)

要約:N-階層開発モード(COM +コンポーネントを記述するためにVB.NETの使用方法)


小さなニャー書かれたCOM +コンポーネントは、まだ非常に複雑ではありませんが、.NETの世界のエントリに、書き込みのプロセスは、多くの、より複雑になってきた書き込みや登録方法のVB6年に始まりました。

ここに書かれた手順は次のとおりです

PDMOMenu.dll COM +コンポーネントである2つの内部の構成要素を有するKDMO1000 []用成分パッケージ名サービスを生成するために、データベースDDMOデータテーブル(TDMOMenu)データ・アクセス・コンポーネントに書き込まれているものとします
Project.Class

  1. PDMOMenu.CDMOMenu1(なし取引):データを読み取るための
  2. PDMOMenu.CDMOMenu2(そこ取引):データを維持するために、

手順を書きます:


Imports System.Runtime.InteropServices
Imports System.Data.SqlClient
Imports System.Data
Imports System.IO



  
  
   
    _
Public Class CDMODEMO1

    Inherits ServicedComponent
    Const DBName as String = "DDMO"   

    Public Function Test1(ByVal In1() As String, ByVal Out1() As String, ByRef P As String, ByRef R As String, ByVal RUser As String) As String
        '*
        '     撰写者:topcat(topcat)     撰写日期:2008/7/23
        '     用途:  1.
        '     做法:
        '             1.
        '     注意事项:
        '             1.
        '             2.
        '     维护记录:
        '         维护者:姓名(员工代号)     维护日期:日期
        '         维护项目:
        '                 1.
        '                 2.
        '         做法:  1.
        '                 2.
        '         注意事项:
        '                 1.
        '*

        Dim ConnStr As String = GetConnStr(DBName)

        Try

            Test1 = "Success"

        Catch ex As Exception
            Test1 = "False"
            Throw New Exception(ex.Message)

        Finally

        End Try
    End Function

    Public Function GetConnStr(ByVal DBName As String) As String
	    '*
	    '     撰写者:topcat(topcat)     撰写日期:2006/2/8
	    '     用途:  1.读取Connection String的方式
	    '     做法:
	    '             1.传入参数DataBase Name DBName
	    '             2.透过Stream将文字档读出
	    '             3.将取得的数据返回
	    '             4.关闭相关对象
	    '     注意事项:
	    '             1.
	    '             2.
	    '     维护记录:
	    '         维护者:姓名(员工代号)     维护日期:日期
	    '         维护项目:
	    '                 1.
	    '                 2.
	    '         做法:  1.
	    '                 2.
	    '         注意事项:
	    '                 1.
	    '*

	    Dim StrmRd As New StreamReader("C:DataLink" + DBName + ".ini")
	    Dim Line As String = ""
	    Dim ConnStr As String = ""
	    Try
	        Do
	            Line = StrmRd.ReadLine()
	            If Line <> "" Then
	                ConnStr += Line
	            End If
	        Loop Until Line Is Nothing
	        GetConnStr = ConnStr

	    Catch ex As Exception
	        Throw New Exception(ex.Message.ToString)

	    Finally
	        StrmRd.Close()
	        StrmRd.Dispose()
	        StrmRd = Nothing

	    End Try
    End Function
End Class
  
  


Imports System.Runtime.InteropServices
Imports System.Data.SqlClient
Imports System.Data
Imports System.IO



  
  
   
    _
Public Class CDMODEMO2
    Inherits ServicedComponent

    Const DBName as String = "DDMO"   


    
   
   
    
     _
    Public Function Test2(ByVal In1() As String, ByVal Out1() As String, ByRef P As String, ByRef R As String, ByVal RUser As String) As String
        '*
        '     撰写者:topcat(topcat)     撰写日期:2008/7/23
        '     用途:  1.
        '     做法:
        '             1.
        '     注意事项:
        '             1.
        '             2.
        '     维护记录:
        '         维护者:姓名(员工代号)     维护日期:日期
        '         维护项目:
        '                 1.
        '                 2.
        '         做法:  1.
        '                 2.
        '         注意事项:
        '                 1.
        '*

        Dim ConnStr As String = GetConnStr(DBName)

        Try


            Test2 = "Success"
        Catch ex As Exception
            Test2 = "False"
            Throw New Exception(ex.Message)

        Finally

        End Try
    End Function

    Public Function GetConnStr(ByVal DBName As String) As String
	    '*
	    '     撰写者:topcat(topcat)     撰写日期:2006/2/8
	    '     用途:  1.读取Connection String的方式
	    '     做法:
	    '             1.传入参数DataBase Name DBName
	    '             2.透过Stream将文字档读出
	    '             3.将取得的数据返回
	    '             4.关闭相关对象
	    '     注意事项:
	    '             1.
	    '             2.
	    '     维护记录:
	    '         维护者:姓名(员工代号)     维护日期:日期
	    '         维护项目:
	    '                 1.
	    '                 2.
	    '         做法:  1.
	    '                 2.
	    '         注意事项:
	    '                 1.
	    '*

	    Dim StrmRd As New StreamReader("C:DataLink" + DBName + ".ini")
	    Dim Line As String = ""
	    Dim ConnStr As String = ""
	    Try
	        Do
	            Line = StrmRd.ReadLine()
	            If Line <> "" Then
	                ConnStr += Line
	            End If
	        Loop Until Line Is Nothing
	        GetConnStr = ConnStr

	    Catch ex As Exception
	        Throw New Exception(ex.Message.ToString)

	    Finally
	        StrmRd.Close()
	        StrmRd.Dispose()
	        StrmRd = Nothing

	    End Try
    End Function

End Class

   
   
  
  

  1. 建設プロジェクト:
    [PDMOMenu]適切なディレクトリ、プロジェクトのコンポーネントのディレクトリを作成1.  

    2.(プロジェクトの作成)プロジェクトを確立し、[ライブラリ(クラスライブラリ)]を選択し、プロジェクトのディレクトリにディレクトリを設定し、名前]に設定されている[PDMOMenu  

    (NOトランザクション)タップのClass1.vb 3にプログラムエクスプローラ(ソリューションエクスプローラ)、ファイル名(ファイル名)プロパティの範囲内(特性)CDMOMenu1.vb変更]を、[CDMOMenu2.vb (トランザクションで)  

    4参照(リファレンス)を右加え→参照のSystem.EnterpriseServicesを増やす[]  

     

    →ステップ2
  2. プロジェクトの説明:
    1.点选项目(Project)右键→属性(Properties)
    2.点选【签署(Signing)】,勾选【签署组件】
    	在选择强势名称金钥档(Choose a strong name key file)
    	选择新增(New)→输入【PDMOMenu】
    3.点选【应用程序(Application)】
    	检查【组件名称(Assembly Name)】、【根命名空间(Root NameSpace)】是否是【PDMOMenu】
    4.按【组件资讯】,将【让组件成为COM-Visiable(Make assembly COM-Visiable)】打勾
    →步骤三

  3. AssemblyInfo.vb:
    1.请在最上方Imports加入:
    Imports System.EnterpriseServices
    
    2.请在最下方加入以操作:
    
        
        
         
          '*设定组件服务的项目名称
    
         
         
    
          
          
         
         
        
        

  4. クラス内容:
    なしトランザクションクラス(CDMOMenu1.vb):

  5. 有トランザクションクラス(CDMOMenu2.vb):

ビルドプロジェクトに続くプログラム、について書いた後、それはプロジェクトのプロパティ設定の位置に応じてDLLを持っています


サプリメント、内容を知らせるために、友人はほとんどの魔法のおかげで間違っている、データベース接続機能を補うために取得

説明:

データ・アクセスは、どのサーバにアクセスされるデータベースを指定するCONNSTRING設定を使用しても認証はどのような方法である使用されます。アセンブリで書かれCONNSTRING場合は、[サーバーアドレスの変更は、それでも私たちは、登録をコンパイル後、修正するために一つずつアウトと呼ばれるコンポーネントをプログラムし、する必要があり、データベースの名前を変更すると、このプロセスは複雑すぎます

データ・リンク、コンテンツCONNSTRINGに立って、その後、アセンブリSystem.IOを読ん:だから切り離さコンポーネントをCONNSTRING設定する方法を、小さなニャーアプローチはCに、.INIテキストファイルを作成することですテキストファイルの内容。

したがって、将来的には、データベースのトランザクション(位置、名前)がある、あなたは、構成ファイルを直接変更し、部品を書き換える必要はありません。


以下は、署名です。

  • ご協力に感謝しますが、[シャンダンス間TOPCAT極端な凝集]投稿、および記事にBenpianハイパーリンク・ステーションの名前を付ける - サイトへようこそ記事が、プラスの投稿の要旨を掲載しました。
  • 最も小さなニャーニャー小さな記事では、ここではいくつかのリファレンスを提供し、あなたはおそらくあなたがオンライン変換ツールを試すことができ、コードが必要な場合はお馴染みの言語はVB.NET、C#のを書くことになります
    • http://converter.telerik.com/
    • http://www.carlosag.net/tools/codetranslator/
    • http://www.developerfusion.com/tools/convert/vb-to-csharp/

マイクロソフトMVP
Visual Studioの開発・テクノロジーズ
(2005年〜現在)

TOPCATの
ブログ:のhttp://www.dotblogs.com.tw/topcat


オリジナル:ビッグボックス  N-階層開発モード(COM +コンポーネントを記述するためにVB.NETを使用する方法)


おすすめ

転載: www.cnblogs.com/chinatrump/p/11505398.html