gpt4 book ai didi

c# - 如何修改 DLL

转载 作者:太空宇宙 更新时间:2023-11-03 22:19:50 27 4
gpt4 key购买 nike

我们使用外部 Dll 作为 :

[DllImport("DemoExport.dll")]
public static extern string GetDBConnection(string sDBName);
[DllImport("DemoExport.dll")]
public static extern int CreateEmptyDBFromDB(string SourceDBName, string DestinationDBName);
[DllImport("DemoExport.dll")]

现在,我们要以相同的模式添加新方法。我们正在寻找是否有任何方法可以在 DemoExport.dll 中实现方法?因此,我们可以使用 DemoMethod() 方法,例如:

[DllImport("DemoExport.dll")]
public static extern void DemoMethod();

这可能看起来像一个疯狂的问题,但我们确实需要实现这个方法,所以稍后我们可以使用它。

此外,如果以上不可能,那么如何创建一个新的 dll 或者说如何使用 C# 中不可用的 DllExport。所以,以后,任何人都可以使用带有属性的方法

[DllImport("dllname.dll")]
publis statis extern void mymeth();

最佳答案

您不能使用 C# 将方法添加到现有的预编译 *.dll。

您必须找到 DLL 的源代码,编写您的方法,重新编译,然后使用 C# 中的新方法。

编辑

我仍然不确定您在更新中要求什么。如果您想编写一个可供其他 C# 使用者使用的新方法,那么您不必对属性做任何特殊的事情。只需在公共(public)类上编写一个公共(public)方法。

之后,任何 .NET 使用者都可以向您的类添加程序集引用并使用您的方法。

如果您希望任何 Windows 用户能够使用您的代码,您可以研究 COM Interop。

如果您仍在尝试使用 C/C++ dll,那么我原来的答案仍然有效。

关于c# - 如何修改 DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3558411/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com