C# で DLL を動的にロードする
1. 新しいテスト DLL とメソッドを作成し、vs2010 を使用して新しい winform プログラムを作成します。具体的なコードは次のとおりです:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace reflect { public partial class Form1 : Form { public Form1() { InitializeComponent(); } public string TestReflect() { MessageBox.Show("动态加载Dll测试"); return "TestReflect返回值"; } } }
ログイン後にコピー
2. コードを動的にロードします
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Reflection; namespace reflectTest { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { //加载dll中的函数 //Assembly asm = Assembly.Load(strDllPath);//加载当前根目录的dll Assembly asm = Assembly.LoadFile(@"F:\WorkSpace\VS测试代码\反射测试001\反射message方法\reflect\reflect\bin\Debug\reflect.dll");//根据dll文件实际路径加载 //用类型的命名空间和类获得类型 System.Type FromClass = asm.GetType("reflect.Form1"); //需要实例化类型,才可以使用,参数可以人为的指定,也可以无参数,静态实例可以省略 Object obj = System.Activator.CreateInstance(FromClass); //通过方法名称获得方法(调试走到下面这一步的时候,就可以弹出“动态加载Dll测试”这个消息了) MethodInfo method = FromClass.GetMethod("TestReflect"); //获取TestReflect函数的返回值,在这里会获取到"TestReflect返回值",如果没有返回值,可以省略这一步 object o = method.Invoke(obj, new object[] { }); } } }
ログイン後にコピー
ちょっとしたメモ:
メソッド名を使用してメソッドを取得します メソッドはパブリックである必要があります。
上記は C# で DLL を動的にロードする内容です。さらに関連する内容については、PHP 中国語 Web サイト (www.php.cn) に注目してください。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
2週間前
By 尊渡假赌尊渡假赌尊渡假赌
レポ:チームメイトを復活させる方法
4週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
4週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.ファイルの保存場所:それはどこにあり、それを保護する方法は?
3週間前
By DDD

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック
Gmailメールのログイン入り口はどこですか?
7333
9


Java チュートリアル
1627
14


CakePHP チュートリアル
1351
46


Laravel チュートリアル
1262
25


PHP チュートリアル
1209
29



C# を使用した Active Directory のガイド。ここでは、Active Directory の概要と、C# での動作方法について、構文と例とともに説明します。

C# データ グリッド ビューのガイド。ここでは、SQL データベースまたは Excel ファイルからデータ グリッド ビューをロードおよびエクスポートする方法の例について説明します。

C# StringReader のガイド。ここでは、C# StringReader の概要とその動作について、さまざまな例やコードとともに説明します。

C# StringWriter のガイド。ここでは、C# StringWriter クラスの概要とその動作について、さまざまな例やコードとともに説明します。
