加载 .DLL 文件并访问其中类的方法?

2023-12-25

我对加载这样的库完全陌生,但这就是我的立场:

我有一个自制的 DLL 文件,它非常简单,包括类本身和方法。在加载该库的主程序中,我有:

Assembly testDLL = Assembly.LoadFile("C:\\dll\\test.dll");

从这里开始,我有点卡住了。据我所知,它加载正确,因为当我更改名称时它会给我错误。

从这里我该怎么办?我到底如何加载其中的类和方法?

Thanks.


Use Assembly.GetTypes()获取所有类型的集合,或者Assembly.GetType(name)以获得特定类型。

然后,您可以使用无参数构造函数创建该类型的实例Activator.CreateInstance(type)或者使用构造函数Type.GetConstructors并调用它们来创建实例。

同样,你可以使用以下方法获取方法Type.GetMethods() etc.

基本上,一旦你有了一个类型,你就可以做很多事情 - 看看会员名单 http://msdn.microsoft.com/en-us/library/system.type_members.aspx了解更多信息。如果您在尝试执行特定任务时遇到困难(泛型可能很棘手),只需提出一个具体问题,我相信我们能够提供帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

加载 .DLL 文件并访问其中类的方法? 的相关文章

  • 无法使用 strptime() 获取秒数

    我收到 YYYY MM DDThh mm ss S Z hh mm 这种格式的日期时间 我正在尝试使用复制该值strptime如下所示 struct tm time 0 char pEnd strptime datetime Y m dT
  • 在 LINQ 查询中返回不带时间的日期

    我正在编写一个查询 我想计算按日期联系我们的呼叫中心的次数 看起来很简单 但由于联系日期字段是日期时间字段 我得到了时间 因此当我按联系日期 时间 分组时 每个联系日期实例的计数为 1 所以 我想只按日期分组 而不按时间分组 下面是我用来查
  • Func 方法参数的首选命名约定是什么?

    我承认这个问题是主观的 但我对社区的观点感兴趣 我有一个缓存类 它采用类型的缓存加载器函数Func
  • 如何在没有 Control.Invoke() 的情况下从后台线程修改控件属性

    最近 我们遇到了一些旧版 WinForms 应用程序 我们需要更新一些新功能 在专家测试该应用程序时 发现一些旧功能被破坏 无效的跨线程操作 现在 在您认为我是新手之前 我确实有一些 Windows 窗体应用程序的经验 我不是专家 但我认为
  • fgets() 和 Ctrl+D,三次才能结束?

    I don t understand why I need press Ctrl D for three times to send the EOF In addition if I press Enter then it only too
  • SSH 主机密钥指纹与模式 C# WinSCP 不匹配

    我尝试通过 WinSCP 使用 C 连接到 FTPS 服务器 但收到此错误 SSH 主机密钥指纹 与模式不匹配 经过大量研究 我相信这与密钥的长度有关 当使用 服务器和协议信息 下的界面进行连接时 我从 WinSCP 获得的密钥是xx xx
  • Cygwin 下使用 CMake 编译库

    我一直在尝试使用 CMake 来编译 TinyXML 作为一种迷你项目 尝试学习 CMake 作为补充 我试图将其编译成动态库并自行安装 以便它可以工作 到目前为止 我已经设法编译和安装它 但它编译成 dll 和 dll a 让它工作的唯一
  • 将字符串从非托管代码传递到托管

    我在将字符串从非托管代码传递到托管代码时遇到问题 在我的非托管类中 非托管类 cpp 我有一个来自托管代码的函数指针 TESTCALLBACK FUNCTION testCbFunc TESTCALLBACK FUNCTION 接受一个字符
  • c 中的错误:声明隐藏了全局范围内的变量

    当我尝试编译以下代码时 我收到此错误消息 错误 声明隐藏了全局范围内的变量 无效迭代器 节点 根 我不明白我到底在哪里隐藏或隐藏了之前声明的全局变量 我怎样才能解决这个问题 typedef node typedef struct node
  • C# 用数组封送结构体

    假设我有一个类似于 public struct MyStruct public float a 我想用一些自定义数组大小实例化一个这样的结构 在本例中假设为 2 然后我将其封送到字节数组中 MyStruct s new MyStruct s
  • 当 Cortex-M3 出现硬故障时如何保留堆栈跟踪?

    使用以下设置 基于 Cortex M3 的 C gcc arm 交叉工具链 https launchpad net gcc arm embedded 使用 C 和 C FreeRtos 7 5 3 日食月神 Segger Jlink 与 J
  • 为什么模板不能位于外部“C”块内?

    这是一个后续问题一个答案 https stackoverflow com questions 4866433 is it possible to typedef a pointer to extern c function type wit
  • 用 C 实现 Unix shell:检查文件是否可执行

    我正在努力用 C 语言实现 Unix shell 目前正在处理相对路径的问题 特别是在输入命令时 现在 我每次都必须输入可执行文件的完整路径 而我宁愿简单地输入 ls 或 cat 我已经设法获取 PATH 环境变量 我的想法是在 字符处拆分
  • 作为字符串的动态属性名称

    使用 DocumentDB 创建新文档时 我想设置属性名称动态地 目前我设置SomeProperty 像这样 await client CreateDocumentAsync dbs db colls x new SomeProperty
  • 在Linux中使用C/C++获取机器序列号和CPU ID

    在Linux系统中如何获取机器序列号和CPU ID 示例代码受到高度赞赏 Here http lxr linux no linux v2 6 39 arch x86 include asm processor h L173Linux 内核似
  • 如何使用 ReactiveList 以便在添加新项目时更新 UI

    我正在创建一个带有列表的 Xamarin Forms 应用程序 itemSource 是一个reactiveList 但是 向列表添加新项目不会更新 UI 这样做的正确方法是什么 列表定义 listView new ListView var
  • C++ 成员函数中的“if (!this)”有多糟糕?

    如果我遇到旧代码if this return 在应用程序中 这种风险有多严重 它是一个危险的定时炸弹 需要立即在应用程序范围内进行搜索和销毁工作 还是更像是一种可以悄悄留在原处的代码气味 我不打算writing当然 执行此操作的代码 相反
  • 如何将字符串“07:35”(HH:MM) 转换为 TimeSpan

    我想知道是否有办法将 24 小时时间格式的字符串转换为 TimeSpan 现在我有一种 旧时尚风格 string stringTime 07 35 string values stringTime Split TimeSpan ts new
  • 为什么 strtok 会导致分段错误?

    为什么下面的代码给出了Seg 最后一行有问题吗 char m ReadName printf nRead String s n m Writes OK char token token strtok m 如前所述 读取字符串打印没有问题 但
  • 不同类型的指针可以互相分配吗?

    考虑到 T1 p1 T2 p2 我们可以将 p1 分配给 p2 或反之亦然吗 如果是这样 是否可以不使用强制转换来完成 或者我们必须使用强制转换 首先 让我们考虑不进行强制转换的分配 C 2018 6 5 16 1 1 列出了简单赋值的约束

随机推荐

  • Java 中的多个布局管理器

    有没有办法在Java中使用超过1个布局管理器 现在我正在使用 gridLayout 来实现棋盘 但在它下面我想放置一些其他东西 但不在 gridLayout 中 也许是 FlowLayout 或其他一些布局 我该怎么做呢 谢谢 是的 您所需
  • 如何将共享首选项从即时应用程序转移到完整应用程序

    我知道我们可以使用 Google Instant 的存储 api 将数据从即时应用程序传输到完整应用程序 如上所述here https developers google com android reference com google a
  • “使用作用域服务时,将服务注入 Invoke 或 InvokeAsync”是什么意思?

    我正在阅读有关 Net Core 中的 DI 的 MS 文档 https learn microsoft com en us aspnet core fundamentals dependency injection view aspnet
  • 在 PowerShell 脚本中访问 Windows 任务凭据

    我需要使用 Windows 任务计划程序自动运行 PowerShell 脚本 我的问题是 在我的 PS 脚本中 我需要将我的凭据发送到 Web 服务 我不想在文件中写入我的凭据 因为它是纯文本并且其他人可以轻松访问 我可以让我的脚本访问我在
  • Drupal 搜索引擎不索引我的自定义节点!

    大约一个小时前 有人发布了一个关于 drupal 搜索引擎的问题 内容如下 我知道 drupal 应该对返回的任何内容进行索引node view 但我的自定义内容不会发生这种情况 另外 Drupal 内置功能是否有更好的替代方案 由于问题在
  • 从两个表中选择时如何按日期获取最新结果?

    我有两个表 我想加入一个查询 result保存实际输入的结果 user tracking跟踪工作的接受和完成情况 用户可以取消并稍后再次接受工作 SELECT from svr1 result r svr1 user tracking u
  • 编写可访问 Django 数据库功能的 Python 程序的最简单方法

    我有一个网站 它定期从 RSS 提要中获取信息 目前是手动获取 这是我的问题 目前 这是作为普通的 Django 视图实现的 在我看来这不是很好 我想要一个使用 cronjob 运行的 Python 程序 而不是手动访问正确的 URL 来更
  • Django Admin - 如何防止删除某些内联

    我有 2 个模型 例如 Book 和 Page Page 有一个 Book 的外键 每个页面都可以标记为 was read 布尔值 我想防止删除已读取的页面 在管理中 在管理中 页面是书中的内联 我不希望页面成为管理中的独立模型 我的问题
  • ScheduledExecutorService 在正常 OS / JVM 上的准确性

    I use ScheduledExecutorService scheduleAtFixedRate运行日常任务 如下所示 executor scheduleAtFixedRate task d 24L 3600 1000 TimeUnit
  • 一般从实体框架返回一个项目

    我遇到过这样的情况 网站可以根据字符串从我的数据库中请求数据 不用担心 我正在防止 SQL 注入 出于各种原因 我希望有一个方法可以返回用户期望的对象 从 EF 最终通过部分页面返回 我在想这样的事情 public
  • 如何在 Qt Creator 中“在 malloc_error_break 中设置断点进行调试”?

    当我点击关闭窗口返回时 我的 Qt5 应用程序崩溃了 MyApp 28741 0x7fff7aa73000 malloc error for object 0x7fc40bc8e300 pointer being freed was not
  • Java 成员枚举类型应该大写吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 这里有个问题 我们有 Java 枚举 它们是它们自己的类 而枚举是类的成员 public enum reportType 每次我看到这个都会让我
  • Kafka主题创建:等待节点分配超时

    我有一个本地 Kafka 使用以下命令运行docker compose yml file version 2 services zookeeper image confluentinc cp zookeeper 5 0 1 environm
  • WebGL 与 openGL 中的着色器? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想使用着色器在 WebGL 中使用 特别是在 Three js 中 WebGL 和 Three js
  • EcsService 下班后不稳定

    我从头开始编写了一个 cloudformation JSON 文件 但我无法部署堆栈 并且我没有从 AWS 获得任何关于原因的信息 它卡在服务中CREATE IN PROGRESS4 5 小时 然后它说该服务did not stabiliz
  • sailsjs 数组查询 精确匹配

    我想在 sailsjs 中查询 mongodb 这是我的数据库的结构 users 52ed09e1d015533c124015d5 52ed4bc75ece1fb013fed7f5 user msgs sender 52ed09e1d015
  • 如何在stable/prometheus图表values.yaml中设置prometheus规则?

    使用官方Prometheus chart stable prometheus 定制其values yaml要设置的文件alertmanager yml文件和serverFiles area At rules https github com
  • 大型多CPU系统上的快速进程间(线程间)通信IPC

    对于进程间通信来说 最快的可移植双向通信机制是什么 其中一个应用程序的线程需要与同一台计算机上另一个应用程序中的多个线程通信 并且通信线程可以位于不同的物理 CPU 上 我假设它将涉及共享内存和循环缓冲区以及共享同步机制 但是 当线程在不同
  • SimpleTest 与 PHPunit

    我想知道是否有任何在这方面有经验的人可以解释一下重要的两者之间有什么区别吗 每种方法有什么特定的优势使其适用于任何特定情况吗 这个问题已经过时了 但由于它仍然有流量和答案 尽管我在这里再次陈述我的观点 但我已经在其他一些 较新的 问题上做到
  • 加载 .DLL 文件并访问其中类的方法?

    我对加载这样的库完全陌生 但这就是我的立场 我有一个自制的 DLL 文件 它非常简单 包括类本身和方法 在加载该库的主程序中 我有 Assembly testDLL Assembly LoadFile C dll test dll 从这里开