C/C++Öж¯Ì¬Á´½Ó¿âµÄ´´½¨ºÍµ÷ÓÃ
ת×Ô£ºhttp://dev.yesky.com/12/3067012.shtml
¶¯Ì¬Á¬½Ó¿âµÄ´´½¨²½Ö裺
¡¡¡¡Ò»¡¢´´½¨Non-MFC DLL¶¯Ì¬Á´½Ó¿â
¡¡¡¡1¡¢´ò¿ªFile —> New —> ProjectÑ¡ÏѡÔñWin32 Dynamic-Link Library —>sample project
¡¡¡¡—>¹¤³ÌÃû£ºDllDemo
¡¡¡¡2¡¢Ð½¨Ò»¸ö.hÎļþDllDemo.h
ÒÔÏÂÊÇÒýÓÃÆ¬¶Î£º
¡¡¡¡#ifdef DllDemo_EXPORTS
¡¡¡¡#define DllAPI __declspec(dllexport)
¡¡¡¡#else
¡¡¡¡#define DllAPI __declspec(dllimport)
¡¡¡¡extern "C" //ÔÑù±àÒë
¡¡¡¡{
¡¡¡¡DllAPI int __stdcall Max(int a,int b); //__stdcallʹ·ÇC/C++ÓïÑÔÄÚÄܹ»µ÷ÓÃAPI
¡¡¡¡}
¡¡¡¡#endif
¡¡¡¡3¡¢ÔÚDllDemo.cppÎļþÖе¼ÈëDllDemo.hÎļþ,²¢ÊµÏÖMax(int,int)º¯Êý
ÒÔÏÂÊÇÒýÓÃÆ¬¶Î£º
¡¡¡¡#include "DllDemo.h"
¡¡¡¡DllAPI int __stdcall Max(int a,int b)
¡¡¡¡{
¡¡¡¡if(a==b)
¡¡¡¡return NULL;
¡¡¡¡else if(a>b)
¡¡¡¡return a;
¡¡¡¡else
¡¡¡¡return b;
¡¡¡¡}
¡¡¡¡4¡¢±àÒë³ÌÐòÉú³É¶¯Ì¬Á¬½Ó¿â
¡¡¡¡¶þ¡¢ÓÃ.defÎļþ´´½¨¶¯Ì¬Á¬½Ó¿âDllDemo.dll¡£
¡¡¡¡1¡¢É¾³ýDllDemo¹¤³ÌÖеÄDllDemo.hÎļþ¡£
¡¡¡¡2¡¢ÔÚDllDemo.cppÎļþÍ·£¬É¾³ý #include DllDemo.hÓï¾ä¡£
¡¡¡¡3¡¢Ïò¸Ã¹¤³ÌÖмÓÈëÒ»¸öÎı¾Îļþ£¬ÃüÃûΪDllDemo.def²¢Ð´ÈëÈçÏÂÓï¾ä£º
¡¡¡¡LIBRARY MyDll
¡¡¡¡EXPORTS
¡¡¡¡Max@1
¡¡¡¡4¡¢±àÒë³ÌÐòÉú³É¶¯Ì¬Á¬½Ó¿â¡£
¶¯Ì¬Á´½ÓµÄµ÷Óò½Ö裺
¡¡¡¡Ò»¡¢Òþʽµ÷ÓÃ
¡¡¡¡1¡¢ ½¨Á¢DllCnslTest¹¤³Ì
¡¡¡¡2¡¢ ½«ÎļþDllDemo.dll¡¢DllDemo.lib¿½±´µ½DllCnslTest¹¤³ÌËùÔÚµÄĿ¼
¡¡¡¡3¡¢ ÔÚDllCnslTest.hÖÐÌí¼ÓÈçÏÂÓï¾ä£º
ÒÔÏÂÊÇÒýÓÃÆ¬¶Î£º
¡¡¡¡#define DllAPI __declspec(dllimport)
¡¡¡¡#pragma comment(lib£¬"DllDemo.lib") //ÔÚ±à¼Æ÷linkʱ£¬Á´½Óµ½DllDemo.libÎļþ
¡¡¡¡extern "C"
¡¡¡¡{
¡¡¡¡DllAPI int __stdcall Max(int a,int b);
¡¡¡¡}
¡¡¡¡4¡¢ÔÚDllCnslTest.cppÎļþÖÐÌí¼ÓÈçÏÂÓï¾ä£º
ÒÔÏÂÊÇÒýÓÃÆ¬¶Î£º
¡¡¡¡#include "DllCnslTest.h"//»òÕß #include "DllDemo.h"
¡¡¡¡void main()
¡¡¡¡{
¡¡¡¡int value;
¡¡¡¡value = Max(2,9);
¡¡¡¡printf("The Max value is&nb
Ïà¹ØÎĵµ£º
ÔÚÈí¼þ¿ª·¢ÕâÒ»¸ß¶È³éÏó¶øÇÒÊ®·Ö¸´ÔӵĻÖУ¬ÃüÃû¹æÔòµÄÖØÒªÐÔ¸üÏÔµÃÓÈΪͻ³ö¡£Ò»Ì×¶¨ÒåÁ¼ºÃ²¢ÇÒÍêÕûµÄ¡¢ÔÚÕû¸öÏîÄ¿ÖÐͳһʹÓõÄÃüÃû¹æ·¶½«´ó´óÌáÉýÔ´´úÂëµÄ¿É¶ÁÐÔºÍÈí¼þµÄ¿Éά»¤ÐÔ¡£
ÔÚÒýÈëϸ½Ú֮ǰ£¬ÏÈ˵Ã÷Ò»ÏÂÃüÃû¹æ·¶µÄÕûÌåÔÔò£º
ͬһÐÔ
ÔÚ±àдһ¸ö×ÓÄ£¿é»òÅÉÉúÀàµÄʱºò£¬Òª×ñÑÆä»ùÀà»òÕûÌåÄ£¿éµÄÃüÃû ......
ÔÚLinuxÓÃc±à³Ì£¬ºÜ¶àʱºò¶¼»áÅöµ½½á¹¹ÌåÕâ¸ö¸ÅÄÓÈÆäÊÇʹÓÃÖ¸Õë·ÃÎʽṹÌå³ÉÔ±¡££¨ÏÂÃæµÄÎÄ×Ö½éÉÜ£¬Çë²Î¿¼´úÂëÀí½â£©
1. ʹÓÃÒ»¸öÐÂÔËËã·û£º->,Õâ¸öÔËËã·ûÓÐÒ»¸öÁ¬½ÓºÅ£¨-£©ºó¸úÒ»¸ö´óÓÚ·ûºÅ£¨>£©×é³É
&nbs ......
ÌâÍâÆª£ºµ¥Ôª²âÊÔÄÑÓÚ³¤ÆÚ¼á³ÖµÄÔÒòÓë½â¾ö̽ÌÖ
ÉÏһƪ¡¶µ¥Ôª²âÊÔÐ§Òæ¡·£¬ÓÐÍøÓÑÆÀÂÛ˵£º“µ¥Ôª²âÊԵĺô¦»ù±¾ÈËÈËÖªµÀ£¬¾ÍÊÇÄѼá³Ö£¡”¡£ÕâÒ»ÆÀÂÛÑÏÖØÌáÐÑÁËÎÒ£¬²»´í£¬“ÄѼá³Ö”Ò²ÊÇÒ»¸öÆÕ±éÏÖ×´¡£Èç¹û²»Äܼá³Ö£¬ÄÇÒ»Çж¼Êǰ״Òò´Ë£¬ÕâÀï²åÈëÒ»¸öÌâÍâÆª£¬Ì½ÌÖµ¥Ôª²âÊÔÄÑÓÚ³¤Æ ......
#include <stdio.h>
#include <string.h> /* ³ÌÐò¶à´Îµ÷ÓÃbiodkey()£¬Ó¦°üº¬Í·Îļþbios.h */
#include <bios.h><br>/* ³ÌÐò¶à´Îµ÷ÓÃclrscr()£¬Ó¦°üº¬Í·Îļþconio.h */
#include <conio.h>
#define MAX 100
#define PAGE 2
#define PRINT1 printf("------------------------------ ......