using System.Runtime.InteropServices;
namespace SmgTest
{
public class Form1 : System.Windows.Forms.Form
{
[DllImport("SmGwAPI.dll", CharSet=CharSet.Auto)]
public static extern int InitSMGPAPI( char * sINIFile);
}
}
这是SmGwAPI库中的接口:
SMGPAPI_EXPORTS InitSMGPAPI(const char *sINIFile);
程序代码错误如下:
const ------------------------------------ “应输入类型“
去掉const后,又出现“指针只能用于不安全的上下文中“
后来将const char * 改成string 后,InitSMGPAPI()函数可以调用。
但,这种方式肯定是不合理的吧?而且后面还有带int *的参数的函数,这该如何解决呢?
请老兄们赐教。或者给点文档什么的,让我研究一下,在google上我实在是找不到相关材料。
namespace SmgTest
{
public class Form1 : System.Windows.Forms.Form
{
[DllImport("SmGwAPI.dll", CharSet=CharSet.Auto)]
public static extern int InitSMGPAPI( char * sINIFile);
}
}
这是SmGwAPI库中的接口:
SMGPAPI_EXPORTS InitSMGPAPI(const char *sINIFile);
程序代码错误如下:
const ------------------------------------ “应输入类型“
去掉const后,又出现“指针只能用于不安全的上下文中“
后来将const char * 改成string 后,InitSMGPAPI()函数可以调用。
但,这种方式肯定是不合理的吧?而且后面还有带int *的参数的函数,这该如何解决呢?
请老兄们赐教。或者给点文档什么的,让我研究一下,在google上我实在是找不到相关材料。