| 
             
              ソス@ソスソスソスソスソス[ソスhソスoソスソスソス驍ッソスヌ関撰ソスソス|ソスCソスソスソス^ソスソスソス謫セソスナゑソスソスネゑソス(DLL)
             
           | 
        
 ソスgソスbソスvソスyソス[ソスWソスソス
        ソスEC/C++
        ソスEDelphi
        ソスEVisual BasicソスソスソスSソスソス
        ソス@(VB2-VB6ソスソス.NETソスソスソスp)
        ソスEVisual Basic(VB2-VB6)
        ソスEVisual Basic .NET
        ソスEVisual C++
ソスEpapy's softwarelibrary
ソスgソスソスソスソスソスソスソス謔ュソスかソスソスネゑソスソスト搾ソスソスソスソストゑソスソスワゑソスソスB
        (ソスヌゑソスソスソスソスヌゑソスソスTソスCソスgソスソスソスソスソスソスホ具ソスソスソスソストゑソスソスソスソスソスソスソス)
        
        ソスソスソスvソスソスソスWソスFソスNソスgソスソスノソスソス[ソスNソスXソスyソス[ソスXソスソスQソスツ作成ソスソス
        ソスミ包ソスソスソスuWin32 Console AppソスvソスAソスソスソスソスミ包ソスソスソスuWin32 Dynamic-Link..ソスv
        ソスノゑソスソストゑソスソスワゑソスソスB
        ソスFソスXソスネサソスCソスgソスソスpソスjソスソスソスAソスネ会ソスソスフようソスノコソス[ソスfソスBソスソスソスOソスソスソスワゑソスソスソスソスB
        DLLソスフソスソス[ソスhソスヘ出ソスソスソスソスフでゑソスソスソスソスAソスヨ撰ソスソス|ソスCソスソスソス^ソスソスソス謫セソスナゑソスソスワゑソスソスソスB
        ソスソスソスニ、ソスソスソスソスソスソスネゑソスソスニゑソスソスソスソスネゑソスソスフでゑソスソス蛯、ソスソスソスH
        
        Appソスフ包ソスソスソスソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|
        #include "windows.h"
        #include "stdio.h"
        
        typedef int (__stdcall *MYFUNC)(int, int);
        MYFUNC pFunc;
        
        void main(){
            HINSTANCE hDLL;
        
            hDLL = LoadLibrary("..¥¥DllTetst¥¥Debug¥¥DllTetst.dll");
            if (hDLL != NULL){
                pFunc = (MYFUNC)GetProcAddress(hDLL,"add");
                if (!pFunc){
                    FreeLibrary(hDLL);    // ソスソスソス
                    return;
                }
                printf("answer = %d¥n",pFunc(1,3));
            }
            FreeLibrary(hDLL);
        }
        
        DLLソスフ包ソスソスソスソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|ソス|
        #include <windows.h>
        #ifdef __cplusplus
        extern "C"{
        #endif
        int __declspec(dllexport) __stdcall add(int a,int b);
        #ifdef __cplusplus
        }
        #endif
        
        BOOL WINAPI DllMain( HINSTANCE hDLL,DWORD dwReason,LPVOID lpReserved ){
            return TRUE;
        }
        
        int __declspec(dllexport) __stdcall add(int a,int b){
            return a+b;
        }
ソスソスソスンまゑソスソスソスAソスヌ記ソスナゑソスソスB
        ソスソスソスソスソスニゑソスuソスソスフプソスソスソスWソスFソスNソスgソスvソスナ作成ソスソスソストゑソスソスワゑソスソスB
ソスソスソスソスソスソスソスソスソスソスソスフは簡単ソスナゑソスソスソスソスAソスソスソスソスソスナは奇ソスソスソスソスト趣ソスソスヘ会ソスソスソスフゑソスソス゚のヒソスソスソスgソスソス^ソスソスソスワゑソスソス蛯、ソスB
        
        ソスワゑソスソスAGetProcAddress ソスソスソスソスソスsソスソスソストゑソスソスソスフでゑソスソスソスソスソスAGetProcAddress ソスフヘソスソスソスvソスソスソスソスワゑソスソス蛯、ソスBソスソスソスソスソスノは、
        ソスソスソスgソスソスソスGソスソスソス[ソスソスソスソス謫セソスソスソスソスノは、GetLastError ソスヨ撰ソスソスソスgソスソスソスワゑソスソスB
        ソスニ擾ソスソスソスソスソストゑソスソスソスヘゑソスソスナゑソスソスB
        
        GetLastError ソスナ、ソスGソスソスソス[ソスRソス[ソスhソスソス謫セソスナゑソスソスワゑソスソスソスソスBソスナゑソスモ厄ソスソスソスソスかソスソスワゑソスソスソスB
        ソスソスソスソスソスナ搾ソスソスxソスヘ、GetLastError ソスフヘソスソスソスvソスソスソスソスワゑソスソス蛯、ソスBソスソスソスソスソスノゑソス
        ソスソスソスGソスソスソス[ソスRソス[ソスhソスノ対会ソスソスソスソスソスGソスソスソス[ソスソスソスソスソスソスソス謫セソスソスソスソスノは、FormatMessage ソスヨ撰ソスソスソスgソスソスソスワゑソスソスB
        ソスニゑソスソスネゑソスニゑソスソスソスソスソスソストゑソスソスソスナゑソスソス蛯、ソスB
        
        ソスソスソスxソスヘ、FormatMessage ソスフヘソスソスソスvソスナゑソスソスB
        ソスソスソスト、ソスソスソスソスソスノは親ソスリなゑソスソスニに、GetLastError ソスナ難ソスソスソスソスGソスソスソス[ソスRソス[ソスhソス文趣ソスソスソスノ変奇ソスソスソスソスソスTソスソスソスvソスソスソスソスソスレゑソスソストゑソスソスソスヘゑソスソスナゑソスソスBソスソスソスソスソスvソスソスソスOソスソスソスソスソスノ組ソスン搾ソスソスソスナ趣ソスソスソスソストみてゑソスソスソスソスソスソスソスソスB
ソスVソスソスソスmソスソスソスソスソスソスヌゑソスソスソスソスソス閧ェソスニゑソスソスソスソスソスソスソスソスワゑソスソスソスソスB
        ソスソスソスソスソストみゑソスニ「ソスmソスソスソスノゑソスソスソスソスソスソスvソスニ思ソスソスソスソスフでゑソスソスソスソスA
        DLLソスフ趣ソスソスソスソスソスソスソスソスノなゑソスソスAGetProcAddress ソスフヘソスソスソスvソスソスソスソスソスネゑソスト考ソスソスソスソスソスソスワゑソスソスソスナゑソスソスソスソスB
        ソスソスソスソスソスソスツゑソスフ包ソスソスソスソスiDLLソスjソスノゑソスソスソスソスレゑソスソスsソスソスソストゑソスソスワゑソスソスソスナゑソスソスソスソスB
        ソスヌゑソスソスソスソスソス閧ェソスニゑソスソスソスソスソスソスソスソスワゑソスソスB
        ソスソスソスソスネ擾ソスネゑソスソスヤ信ソス頂ゑソスソスソスソスソスソスソスソスナゑソスソスB
        
        ソスソスソスソスソスJソスソスソスワゑソスソスソスソスB
        ソスソスソスいソスソスニゑソスソスソスホゑソスソストみまゑソスソスI
ソスナは、ソス答でゑソスソスB
        
        FormatMessage ソスナはどゑソスネ包ソスソスソスソスが難ソスソスソスソスワゑソスソスソスソスソスソスH
        ソスソスソスソスソス轤ュソスuソスvソスソスソスVソス[ソスWソスソスソスソスソスソスソスツゑソスソスソスワゑソスソスソスvソスニゑソスソスソスソスソスソズのゑソスフでゑソスソス蛯、ソスB
        ソスツまゑソスAGetProcAddress ソスナ取得ソスソスソス謔、ソスニゑソスソストゑソスソスソス add ソスニゑソスソスソスソスヨ撰ソスソスソス DLL ソスソスノ鯉ソスソスツゑソスソスソスネゑソスソスAソスニゑソスソスソスソスソスソスニでゑソスソスB
        
        DLL ソスノどゑソスネ関撰ソスソスソスソスソスソス驍ゥソス調べゑソスノは、VC++ ソスノ付ソスソスソスソスソストゑソスソスソス Dependency Walker ソスニゑソスソスソスソス¥ソスtソスgソスソスgソスソスソスワゑソスソスBVC++ 6.0 ソスネゑソスAソスXソス^ソス[ソスgソスソスソスjソスソスソス[ソスフ「Microsoft Visual Studio 6.0 ソスcソス[ソスソスソスvソスフ抵ソスソスノゑソスソスソスナゑソスソス蛯、ソスB
        ソスソスソスソスソスNソスソスソスソスソスト、ソスEソスBソスソスソスhソスEソスソス DLL ソスtソス@ソスCソスソスソスソスhソスソスソスbソスOソスソスソスhソスソスソスbソスvソスソスソストみまゑソスソス蛯、ソスB
        ソスEソスBソスソスソスhソスEソスフ右ソスソスソスノ、DLL ソスソスソスGソスNソスXソス|ソス[ソスgソスソスソストゑソスソスソスヨ撰ソスソス齬暦ソスソスソス¥ソスソスソスソスソスソスワゑソスソスBソスソスソスト、add ソスヘゑソスソスソスナゑソスソス蛯、ソスソスソスH
        
        ソスソスソスソスソス轤ュソスA_add@8 ソスニゑソスソスソスソスソスソスヨ撰ソスソスソスソスソスソスソスじゑソスネゑソスソスナゑソスソス蛯、ソスソスソスB
        ソスツまゑソスAGetProcAddress ソスナはゑソスソスソス _add@8 ソスニゑソスソスソスソスヨ撰ソスソスソスソスソスwソス閧オソスネゑソスソスソスホなゑソスネゑソスソスソスソスソスソスフでゑソスソスB
        
        ソスソスソスソスソスソスソスソスソスソスナは不ソスヨでゑソスソスヒ。ソスネゑソスニゑソス add ソスナ取得ソスナゑソスソスソス謔、ソスノゑソスソスソスソスソスソスソスフでゑソスソスB
        ソスソスソスト、ソスソスソスソスソスナようソス竄ュソス答でゑソスソスB
        ソスソスソスソスソスヘ「__declspec( dllexport ) ソスソスgソスずソスソス DEF ソスtソス@ソスCソスソスソスソスgソスソスソスvソスナゑソスソスB
        ソスナ擾ソスソスソス
        ソスソスソスヌゑソスソスソスソスヌゑソスソスTソスCソスgソスソスソスソスソスソスホ具ソスソスソスソストゑソスソスソスソスソスソスソス
        ソスニゑソスソスソスワゑソスソスフで、ソスソスソスソスソスソスソスソスソスワゑソスソス蛯、ソスB
        ソス{ソスソスソスネゑソスホ、ソスナゑソスQソスlソスノなゑソスTソスCソスgソスヘマソスCソスNソスソスソス¥ソスtソスgソスAMSDN ソスナゑソスソスB
        ソスソスソスソスソスソスソスソスソスソスソスフ趣ソスソスソスソスヘわかソスソス竄キソスソスソスニは鯉ソスソスソスソスネゑソスソスフで、ソスソスソスソスヘゑソスソスソスソスソスB
        
        Area of VC++ Tips ソスソスソスソスフゑソスソスソスソスソス
        http://rararahp.cool.ne.jp/vc/
        
        ソスソスソスソスフ「VC++ TipsソスvソスソスソスソスAソスEソスソスノゑソスソスソスuDLLソスiWin32ソスjソスvソスフ抵ソスソスAソスudeclspec(dllexport)ソスソスgソスソスソストエソスNソスXソス|ソス[ソスgソスソスソスソスvソスニ「DEFソスtソス@ソスCソスソスソスソスgソスソスソストエソスNソスXソス|ソス[ソスgソスソスソスソスvソスソスソス[ソスソスソスヌゑソスナみてゑソスソスソスソスソスソスソスソスB
        ソスソスRソスソスソスKソスRソスソスソスAソスワろさソスが最擾ソスソスノ提示ゑソスソスソスソスフとまゑソスソスソスソスソスソスソスソスソスソス¥ソス[ソスXソスRソス[ソスhソスソスソスソスソスツゑソスソスソスワゑソスソスB
        ソスソスRソスナなゑソスソスニゑソスソスソスソスソスAソスソスソスノ参ソスlソスノなゑソスTソスCソスgソスソスソスソスツゑソスソストゑソスソスソスソスソスソスニになゑソスワゑソスソスヒ。
        
        ソスソスソスソスソスソスAソスソスソスソスノ気ソステゑソスソスソスソスフはつゑソスソスソスソスソスソスソスソスナゑソスソスB
        ソスソスソスソスソスソスニ托ソスソスソスソスソスソスソスネゑソスソスソスソスソスソスソスソスニゑソス{ソスソスネゑソスソスナゑソスソスソスソスソスソスソスソスヒ…
        
        ソスネゑソスソスAソスソスLソスyソス[ソスWソスノゑソス
        ソスソスソスGソスNソスXソス|ソス[ソスgソスノは、declspecソス推擾ソスソスソスソスワゑソス
        ソスニゑソスソスソスソス齦カソスソスソスソスソスソスワゑソスソスソスソスAソスソスソスソスヘ必ソスソスソスソスソスソスソスソスソスソスソスソスヘゑソスソスソスワゑソスソスソスB
        ソスソスソスソスソスyソス[ソスWソスソスノ「ソステ黙的ソスソスソスソスソスNソスvソスニ「ソスソスソスソスソスIソスソスソスソスソスNソスvソスノつゑソスソストの会ソスソスソスソスソスソスソスワゑソスソスBソステ黙的ソスソスソスソスソスNソスフ場合ソスソス declspec ソスフ包ソスソスソスソスyソスナゑソスソスソスソスAソスソスソスソスフようソスノ厄ソスソスソスソスIソスソスソスソスソスNソスソスsソスネゑソスソス鼾ソスノゑソス DEF ソスtソス@ソスCソスソスソスフほゑソスソスソスソスかソスソス竄キソスソスソスナゑソスソス蛯、ソスB
        ソスツ人ソスIソスノゑソス DEF ソスtソス@ソスCソスソスソス推擾ソスソスソスソスワゑソスソスB
        
        ソスネゑソスソスAソスヨ撰ソスソスナはなゑソスソスNソスソスソスXソスソスGソスNソスXソス|ソス[ソスgソスソスソスソス鼾ソスヘ、ソステ黙的ソスソスソスソスソスNソスソスソスソスソスIソスソスソスソスソスソスネゑソスソスニ鯉ソスソスソスソストゑソス゚鯉ソスソスナはゑソスソスソスワゑソスソスソスB
        
        ソスソスソスソスソスト会ソス閧ュソスヌゑソスソスソスソスソスソスソストみまゑソスソスソスソスソスソスAソスソスソスCソスノ擾ソスソスソスソスネゑソスソスソスソスソスソス轤イソス゚ゑソスネゑソスソスソスソスヒ。
ソスSソスRソスソス閧ュソスヌゑソスソスネゑソスソスナゑソスソスBソスqソスソスソスgソスソスソスソスソスソスト抵ソスソスソスソスソスソスソスソスソスソスAソスソスソスYソスだとゑソスソスニゑソスソスQソスlソスノなゑソスワゑソスソスソスソスB
        ソスソスヤ最擾ソスソスノ載ゑソスソスソスソスvソスソスソスOソスソスソスソスソスヘゑソスソス@ソスソスソスフ通りそソスソスソスソスフサソスCソスgソスソスソスソスフパソスNソスソスソスソスソスソスソスソスソス閧オソスワゑソスソスB(^^;
        ソスソスソスソスネ奇ソスソスソスソスナ搾ソスソスソストみゑソスソスソスソスAソスニゑソスソスソスソスフゑソスソスソスソスソスソスソスソスソスTソスソスソストゑソスソスト、ソスヌゑソスソスノゑソスソスソスソスソスソスノゑソスソスソスソスヌり着ソスソスソスワゑソスソスソスソスB
        ソスネのになゑソスソスソスソスソスネ趣ソスソスソスソスHソスナゑソスソスソスヒ。DLLソスソス謔ュソスソスソスソスソスソストゑソスソスネゑソスソスADEFソスtソス@ソスCソスソスソスソスgソスソスネゑソスソスソスdllソスソス成ソスソス(declspecソスナ作成ソスソスソスソス)ソスAソスソスソスソスソスIソスノソスソスソスソスNソスソスソスソスソスソス@ソスソスソストなゑソスソスフゑソスソスネ?ソスニ色ソスXソスlソスソスソストゑソスソスワゑソスソスソスソスB
        
        ソスソスソスソスソスト抵ソスソスソスソスソスソス謔、ソスノエソスソスソス[ソスソスソスソスソスソスソス閧オソストゑソスソスソスソスナ抵ソスソスAGetProcAddressソスソスnullソスネ外ソスフ厄ソスソスソスソスネアソスhソスソスソスXソスソスヤゑソスソス謔、ソスノなゑソスAソスソスソスソスノ抵ソスソスラてゑソスソスソスソスソスulpProcName ソスpソスソスソスソスソス[ソス^ソスナ指ソス閧ウソス黷スソスソスソスソスソスソスソスノ対会ソスソスソスソスソスヨ撰ソスソスソスソスソスソスンゑソスソスネゑソスソスニ、GetProcAddress ソスソス null ソスネ外ソスフ厄ソスソスソスソスネアソスhソスソスソスXソスソスヤゑソスソスAソスGソスソスソス[ソスソスソスソスソスソスソスソスソスソスツ能ソスソスソスソスソスソスソスソスワゑソスソスBソスvソスネゑソスト趣ソスソスソスmsdnソスノ載ゑソスソストゑソスソスト、ソスソスソスGソスNソスXソス|ソス[ソスgソスソスソストなゑソスソスソスソスヌゑソスソスソスソスソスHソスソスDEFソスtソス@ソスCソスソスソスソスソスKソスp
        ソスニ、ソスヌゑソスソスノゑソスソスソスソスソスソスソスソスツゑソスソスワゑソスソスソスソスB
        
        ソスソスソスソスソスソスソスソスソスAdeclspec ソスナ厄ソスソスソスソスIソスソスソスソスソスNソスソスソスソスソスソスソス@ソスソスソスかソスソスソストゑソスソスワゑソスソスソスB
        Win32APIソスVソスXソスeソスソスソスvソスソスソスOソスソスソス‾ソスソスソスOソスニゑソスソスソスソス{(ソスソスソスソスソスソスソスソスソスノ鯉ソスソスツゑソスソスソスソスソスナゑソスソスソスソスヌゑソス)ソスソスDLLソスノつゑソスソスト詳ゑソスソスソスソスレゑソスソストゑソスソスソスフでゑソスソスソスソスAソスソスソスソスソスノゑソスdelspecソスナの厄ソスソスソスソスIソスソスソスソスソスNソスフ包ソスソス@ソスソスソスレゑソスソストゑソスソスネゑソスソスト・ソスEソスB
        
        ソスニはゑソスソスソスソスソスフの、ソスソスソスソスソスソスワゑソスソスソスソスB
        ソスVソスソスソスmソスソスソスソスソスソスAソスソスソスソスソスJソスノゑソスソス閧ェソスニゑソスソスソスソスソスソスソスソスワゑソスソスソスソスB
ソスソスソスソスニなゑソスソストゑソスソスワゑソスソスソスソスcソスcソスB
        
        
        > ソスソスソスソスソスソスソスソスソスAdeclspec ソスナ厄ソスソスソスソスIソスソスソスソスソスNソスソスソスソスソスソスソス@ソスソスソスかソスソスソストゑソスソスワゑソスソスソスB
        
        ソスソスソスソスソスヘ奇ソス{ソスIソスソスDEFソスtソス@ソスCソスソスソスナゑソス齒擾ソスナゑソスソスB
        ソスツまゑソスCDLLソスナエソスNソスXソス|ソス[ソスgソスソスソス黷スソスヨ撰ソスソスソスソスソスGetProcAddressソスノ指ソス閧オソストゑソスソスホよいソスフでゑソスソスB
        
        
        ソスVソスソスソスmソスソスソスソスソスが擾ソスソスソスソスソストゑソスソスソス謔、ソスノ,
        extern "C" int __declspec(dllexport) __stdcall add(int a,int b);
        ソスニ宣言ソスソスソスソストゑソスソスソスヨ撰ソスソスヘ,VC++ソスナエソスNソスXソス|ソス[ソスgソスソスソスソスソス鼾ソスC
        ソスソスソスソスソス轤ュ_add@8ソスニゑソスソスソスソスソスソスOソスナエソスNソスXソス|ソス[ソスgソスソスソスソスワゑソスソスB
        ソスソスソスフ為,
        pFunc = (MYFUNC)GetProcAddress(hDLL,"_add@8");
        ソスフ様ソスノ,addソスナはなゑソス_add@8ソスニゑソスソスソスソスソスソスOソスソスgソスソスソスホゑソスソスソスソスニ暦ソスソスpソスナゑソスソスワゑソスソスB
        
        _add@8ソスニゑソスソスソスソスソスソスOソスヘ,MAPソスtソス@ソスCソスソスソス調べゑソスネゑソスdumpbin.exeソスソスgソスソスソスネゑソスC
        Dependency Walkerソスソスgソスソスソスネりすソスソスホ知ソス驍アソスニゑソスソスナゑソスソスワゑソスソスB
        http://www.dependencywalker.com/
ソスソスソスソスEソスEソスEソスB
        ソスソスソス゚てゑソスソスソストみゑソスソス迚スソスソスソスソスネゑソスソスナゑソスソストゑソスソスワゑソスソスワゑソスソスソスソスB(ソスソスソスソスソスソスナゑソス)
        ソスYソスソスナゑソスソスソスニゑソスソスソス_add@8ソスソスソスソスソスソスソスソスCソスソスソスソスソスソスソスソスナゑソスソスソスソスヌね・ソスEソスEソスB(ソスソスソスソスソスソスナゑソス)
        .defソスtソス@ソスCソスソスソスソスgソスソスソスネ外ソスヘ殆ソスヌゑソスソスソストみゑソスソスソスナゑソスソスソスソスEソスEソスEソスB
        ソスソスソス゚て最擾ソスソスノ趣ソスソス竄オソスソスソスvソスソスソスOソスソスソスソスソスソスソスソストみゑソスニ・ソスEソスEソスiソスp