我只有一个没有.h和.lib文件的dll文件。如何在vc ++中使用它?

时间:2015-10-22 01:06:33

标签: c++ dll header

我的Xsteam.dll文件适用于我的所有LABVIEW项目;但现在我想在一个简单的可视化C ++项目中使用它(Xsteam.dll)(在visual studio 2013或...中)。

我没有任何其他相关文件(例如* .h,* .lib等)。

我知道用c / c ++语言编写的Xsteam.dll,我知道它的所有函数和输入输出的变量类型arg。

我通常在此设置中使用LABVIEW中的Xsteam.dll

library name or path:    c:\XSteam.dll         
function name:            h_pT          
thread:               run in UI thread           
calling convention:      stdcall(WINAPI)                  
function prototype :  double h_pT@16(double arg1, double arg2);       

return type :   Numeric 8-byte double          
arg1:     Numeric 8-byte double    Pass: Value             
arg2:    Numeric 8-byte double      Pass: Value                   

prototype for these procedures: 
                                 MgErr Proc(InstanceDataPtr *instanceState);

如何通过简单的Vc ++程序使用Xsteam.dll

2 个答案:

答案 0 :(得分:2)

example:
HMODULE hModule = LoadLibrary("c:\\XSteam.dll");
typedef double  (* FNPTR) (double , double );
                FNPTR pfn = (FNPTR)hModule.GetProc("h_pT");
                if ( NULL != pfn )
                {
                    double result=pfn(arg1, arg2);
                }

答案 1 :(得分:1)

您需要创建一个头文件并使用dumpbin和lib来创建一个导入库(* .lib)。查看herehere