C/C++ code:
//ÕâÊÇÔÚ.hÍ·ÎļþÖж¨ÒåµÄ
struct _TestStruct;
typedef struct _TestStruct TestStruct;
//ÕâÊÇÔÚ.cppÎļþÖж¨ÒåµÄ
typedef struct _TestStruct
{
TestStruct1 struct1;
TestStruct2 struct2;
}TestStruct;
__declspec(dllexport) TestStruct* __stdcall Init()
{
return init();
}
__declspec(dllexport) BOOL __stdcall Update_Info(intptr_t* struct, char* key, char* value)
{
return update_info((TestStruct*)struct, key, value);
}
//ÊÍ·Å
__declspec(dllexport) void __stdcall Free_Struct(intptr_t struct)
{
return free_struct((TestStruct*)struct);
}
C# code:
[DllImport("Test.dll")]
public static extern IntPtr Init();
[DllImport("Test.dll")]
public static extern bool Update_Info(IntPtr struct, String key, String value);
[DllImport("Test.dll")]
public static extern void Free_Struct(IntPtr struct);
ÒòΪ²»ÐèÒª¹«¿ª£¬ËùÒÔÔÚÍ·ÎļþÖж¨ÒåµÄ½á¹¹£¬ÔÚ.cppÎļþÖÐʵÏֽṹ¡£
ÏÖÔÚÎÊÌâÊÇC#Òªµ÷ÓÃdllÖÐÕ⼸¸öº¯Êý£¬ÔËÐÐÈ«²¿Í¨¹ý£¬µ«ÊÇ´ø²»³öÖµ£¬
Çë´ó¼Ò°ï°ï棬¼±°¡......
ÔÚÏߵȣ¬Èç¹û½â¾ö£¬±Ø¶¨¼Ó·Ö´ðл!~
ÎÊÌâ×Ô¼º½â¾öÁË£¬²»ºÃÒâ˼£¬ÍüÁ˼°Ê±ÉÏÀ´½áÌù¡£
лл1Â¥2Â¥Á½Î»¡£
ÎÊÌâ³öÔÚÎÒÄÚ²¿Ö¸Õë´«µÝÓдí....
ʹÓÃACCESS×î´óµÄÒþ»¼¾ÍÊDz»°²È«¡£½ñÌì¶ÔACCESSÊý¾Ý¿âÉèÖÃÁËÒ»¸öÃÜÂ룬±ØÐëʹÓÃÃÜÂë²ÅÄÜ´ò¿ª£¬µ«ÊÇÔÚ³ÌÐòÖÐÈ´ÎÞ·¨Á¬½ÓÊý¾Ý¿âÁË¡£´ó¼ÒÖªµÀʹÓÃÓû§ÃûºÍÃÜÂ룬ÈçºÎÁ¬½ÓACCESSÊý¾Ý¿â£¿Ã²ËÆACCESSµÄÓû§Ãû»¹²»ÖªµÀ£¿Ö»Öª ......
¹«Ë¾¿ª·¢Ò»¸ö´¥ÃþÆÁ³ÌÐò£¬ÎÒ¸ºÔðµÄÒ»¿é£¬ÊµÏÖÕâÑùÒ»¸ö¹¦ÄÜ£¬µ±Êó±êµã»÷´°¿ÚÖÐͼƬ£¨Ò»ÕÅͼ·Ö³É¼¸²¿·Ö£©µÄÆäÖÐÒ»²¿·Öʱ£¬½«Õⲿ·ÖͼƬ½ØÈ¡³öÀ´£¬µ¯³öеĴ°¿Ú£¬½«½ØÈ¡³öµÄͼƬÏÔʾ³öÀ´¡£ÎÒʹÓÃRectangeÀà¿ØÖÆÁË·µ»Ø£¬ ......