基于变量参数调用任意dll函数

基于变量参数调用任意dll函数,dll,function,dynamic,loadlibrary,getprocaddress,Dll,Function,Dynamic,Loadlibrary,Getprocaddress,我在一个结构中有以下项目: -Dll名称绝对/相对路径 -dll中的函数名 -参数数量 -参数类型和值的数组 有了这些信息,我需要加载dll并调用函数。 要加载dll,我将使用LoadLibrary。 要获取函数的地址,我将使用GetProcAddress。 调用函数。 要卸载dll,请单击FreeLibrary 由于函数的参数数量是动态的,因此我不确定需要如何将参数传递给函数 有人能提供一些关于如何将参数传递给dll函数的详细信息吗 感谢和问候, V karhold是否可以将带有参数的dict

我在一个结构中有以下项目: -Dll名称绝对/相对路径 -dll中的函数名 -参数数量 -参数类型和值的数组

有了这些信息,我需要加载dll并调用函数。 要加载dll,我将使用LoadLibrary。 要获取函数的地址,我将使用GetProcAddress。 调用函数。 要卸载dll,请单击FreeLibrary

由于函数的参数数量是动态的,因此我不确定需要如何将参数传递给函数

有人能提供一些关于如何将参数传递给dll函数的详细信息吗

感谢和问候,
V karhold

是否可以将带有参数的dictionary对象传递给某个包装函数,并让该包装函数调用实际函数?这可能会为您省去很多麻烦,而且您可能会使用预处理器为您生成包装函数。

我不确定包装函数将如何调用最终的dll。考虑到最多有10个参数和参数类型为int、float和string,可能的组合将是巨大的,其想法是在DLL本身中编写包装函数。这样,包装器就会知道字典中会出现什么,并且知道如何分配它们。我也有同样的问题。但问题是dll完全是任意的。我想要的东西,将所有的DLL工作-这两个我做的,和我不做的。。。我想这也是@Karthick的问题。