VB µ÷Óà vc ±àдµÄdll - C/C++ / C++ ÓïÑÔ
ÓÃvc±àдµÄdllÔÚdebugģʽºÍreleaseģʽÏÂÆô¶¯vbµÄexe³ÌÐòµ÷ÓÃvcµÄdll¿ÉÒԵõ½ÕýÈ·½á¹û£¬µ«ÊÇÈç¹ûÖ±½ÓË«»÷vbµÄexe³ÌÐòµ÷ÓÃdll±¨´í£¬ÔÚdllÄÚ²¿Ìí¼Ómessageboxºó·¢ÏÖÖ»ÒªÔÚº¯ÊýÄÚ²¿ÉùÃ÷std::stringÀàÐ͵ıäÁ¿¾Í»á³öÏÖÄÚ´æ·ÃÎʳåÍ»µÄÎÊÌ⣬ÇëÎÊÓÐûÓÐÈËÓöµ½¹ý£¬¿ª·¢»·¾³vs2008+win2008
Windows APIÀàµÄ±à³Ì£¬Ñϸñ½ûֹʹÓÃSTL Ϊʲô£¿ÎÒ²»´ò¿Úˮս£¬ÌýÎÒµÄû´í dllÄÚ²¿´óÌåÊÇÕâÑùµÄ std::string test() { std::string t="sdfs"; return t; } extern "C" int __stdcall GetP(WCHAR* username) { std::string result=test(); swprintf(username,L"%s",result.c_str()); } ÿµ±Ö´Ðе½testº¯ÊýÄÚ²¿·ÖÅä±äÁ¿µÄʱºò¾Í¿ªÊ¼±¨´íÒýÓà dllÄÚ²¿´óÌåÊÇÕâÑùµÄ std::string test() { std::string t="sdfs"; return t; } extern "C" int __stdcall GetP(WCHAR* username) { std::string result=test(); swprintf(username,L"%s",result.c_str()); } ±ðµÄ²»Ëµ£¬¹âÆÕͨ×Ö·û¸ñʽ»¯¸ø¿í×Ö·û¾ÍºÜ¶ñ¸ã£¬STLºÍWindows SDK×î´óµÄÇø±ð¾ÍÊÇ×Ö·û±íʾ£¬SDKÓúê×Ô¶¯Åж¨£¬STLÐèÒªÏÔʾָ¶¨wstring¡£ ½¨ÒéÄúҪô¶¯Ì¬·ÖÅä×Ö·ûÖ¸Õ룬»òÕßÄþ¿É¹ÒÉÏATL¿âÓÃCString£¬×Ö·ûÖ¸ÕëÓÃTCHAR*£¬Ò²±ðSTL£¬VBµÄʵÏÖÊÇÓÃWindows SDKµÄ£¬ÓÃSTLÊǸöÒþ»¼ ÔÚ±àÒë»·¾³ÏÂÄÜÕýÈ·ÔËÐжøÖ±½ÓË«»÷²»ÄÜÔËÐÐ? Â¥Ö÷ÄÜ·ñ´òÒ»ÏÂtrace È·ÈÏÒ»ÏÂÊÇ·ñÕæµÄ½
Ïà¹ØÎÊ´ð£º
ÇëÎÊVFPÖÐÈçºÎµ÷ÓÃC/C++º¯Êý£¿ ÄãÒªµ÷ÓÃʲô¹¦Äܵĺ¯Êý£¿Òª¿´¿´VFPÖÐÓÐûÓжÔÓ¦µÄº¯Êý£¬Èç¹ûÓоÍÊ¡×ÅÔÙµ÷ÓÃÁË¡£Èç¹ûûÓУ¬¿ÉÒÔ½«C/C++º¯Êýд¸öDLL»òFLL£¬È»ºóÔÚVFPµ÷Óü´¿É¡£ Ê®¶¹Èý ÀÏʦ£¬Ôõô²ÅÄÜÐÞ¸Ä×Ô¼ºµÄ ......
ÈçÌ⣬C/C++ÖеÄexeclÔõôµ÷ÓÃдºÃµÄjava³ÌÐò£¬ execl("/opt/java1.5/bin/java","MyClass",NULL); ÕâÑùµÄ²»ÐÐŶ¡£ ²»»á. ÔËÐÐjava³ÌÐò ÕÒ¹¤¾ß²é¿´Ò»ÏÂÄǸö³ÌÐòµÄÃüÁîÐÐ ËÑË÷Ï£ºjni ......
·Ö±ðÓýṹ»¯·½·¨ºÍÃæÏò¶ÔÏó·½·¨±à³ÌʵÏÖÏÂÃæÒªÇó£º ¶ÔCircleºÍRectangleʵÏÖÒÔϹ¦ÄÜCenter,Move,Rotate,Print. ×Ô¼ºÏȶ©ÒÔÏ£¬ÕâÊÇÒ»¸ö¸Õѧϰ¼ÆËã»úµÄÈËÎÊÎÒµÄ Ñ§Ï°£¬¿´¿´ ¼ÌÐø¶¥Å¶ ѧϰÁË¡£ go o ......
ÎÒֻѧ¹ýÇ廪À¶·âÃæµÄCÓïÑÔ»ù´¡£¬Ïë¸üÉîÈëµÄѧϰ£¬¸Ã¿´Ê²Ã´ÊéºÃ£¿ C Primer Plus C³ÌÐòÉè¼ÆÓïÑÔ(µÚ2°æаæ) CÓïÑÔ³ÌÐòÉè¼Æ_ÏÖ´ú·½·¨ CÓïÑԲο¼ÊÖ²áµÚÎå°æ CÓïÑÔ´óÈ« CºÍÖ¸Õë CÏÝÚåÓëȱÏÝ Cר¼Ò±à³Ì ......