일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- SPL
- 삼성소프트웨어멤버십
- RNN
- SciPy
- install
- Splunk
- E-P1
- GitHub
- pycharm
- Series
- DFS
- 알고리즘
- GT-S80
- CNN
- index
- Numpy
- imread
- Python
- mean
- mariadb
- pip
- keras
- Lotto
- javascript
- Button
- pandas
- dataframe
- synology
- LSTM
- ipad
- Today
- Total
목록잠토네 잠수함 (493)
잠토의 잠망경
DllMain.h #ifdef MYEXPORTDF #define MYEXPORTextern "C" __declspec(dllexport) #else #define MYEXPORTextern "C" __declspec(dllimport) #endif #undef UNICODE #include #include Dllmain.cpp #define MYEXPORTDF #include "DllMain.h" MYEXPORT int WINAPI wonJae() { printf("hi\n"); return 0; } BOOL WINAPI DllMain(HINSTANCE hInst, DWORD fdwReason, LPVOID lpRes) { switch (fdwReason) { case DLL_PROCESS_ATTACH:..
DllDelayLIB.h //사용자 정의 Define #ifdef MYEXPORTDF #define MYEXPORTextern "C" __declspec(dllexport) #else #define MYEXPORTextern "C" __declspec(dllimport) #endif #undef UNICODE #include #include DllDelayLIB.cpp #define MYEXPORTDF #include "DllDelayLIB.h" MYEXPORT void PutMessage() { MessageBox(NULL,"안녕하세요.","반가워",MB_OK); } DelayApp.cpp //Dll 로딩을 위한 사용자 정의 lib 추가 #pragma comment(lib,"DllDelayLoading..
DllPutMes.h #ifdef MYEXPORT #define MYEXPORTextern "C" __declspec(dllexport) #else #define MYEXPORTextern "C" __declspec(dllimport) #endif #include DllPutMes.cpp #undef UNICODE #define MYEXPORT #include "PutMes.h" MYEXPORT void PutMes() { MessageBox(NULL,"안녕하세요.","인사",MB_OK); } PutMesApp.cpp #undef UNICODE #include "PutMes.h" #include typedef void (*fPutMes)(); int main(void) { fPutMes fPUTMES; ..
#undef UNICODE #include #include typedef int (*pFunction)(int,int); void RunLink() { HINSTANCE hInst; pFunction pFunc; //명시적인 로드를 위한 LoadLibrary 함수이다. hInst=LoadLibrary("[40]DLLExternC.dll"); //Dll 모듈에서 AddInteger라는 이름의 함수를 얻오는 함수이다. pFunc=(pFunction)GetProcAddress(hInst,"AddInteger"); //함수를 직접호출하는 문장이다. int Result=pFunc(1,2); //함수의 결과를 출력한다. printf("Result: %d\n",Result); //모듈 사용이 끝났으므로 Dll의 us..
DllApp.cpp #include "MyDllTest.h" #include //컴파일러의 라이브러리 관리 모듈에게 [40]DllExternC.lib을 검색해 보도록한다. #pragma comment(lib,"[40]DllExternC.lib") //해당 함수를 임폴트하구 있다. extern "C" MYEXPORT int AddInteger(int,int); int main(void) { int result=AddInteger(10,11); printf("result: %d\n",result); return 0; } [40]DllExternC.h #ifdef MYEXPORT #define MYEXPORT__declspec(dllexport) #else #define MYEXPORT__declspec(dl..
#undefUNICODE #include #include void ProcA() { STARTUPINFO si={sizeof(STARTUPINFO),}; PROCESS_INFORMATION pi; //프로세스를 하나 실행시킵니다. if(CreateProcess(NULL,//[in]실행파일의 이름 "NotePad.exe",//[in]실행파일의 이름(권장) NULL,//[in]프로세스 속성의 상속에 관련된것 NULL,//[in]쓰레드 속성의 상속에 관련된것 FALSE,//[in]상속에 관련된것 0,//[in]프로세스의 스케줄링에 priority에 영향을 준다. NULL,//[in]A pointer to the environment block for the new process. NULL,//[in]The f..
#undef UNICODE #include #include void ProcB() { CHAR str[128]={0,}; //프로세스의 파일 이름을 출력합니다. GetModuleFileName(NULL,str,128); printf(str); printf("\n\n"); CHAR drive[_MAX_DRIVE]={0,}; char dir[_MAX_DIR]={0,}; char fname[_MAX_FNAME]={0,}; char ext[_MAX_EXT]={0,}; //http://www.winapi.co.kr/clec/cpp2/17-4-3.htm //한개의 입력 경로를 각 부분에 맞게 버퍼에 넣어준다. //예를 들어c:\\My Document\\Test\\Report 2.5.bak 같은경우 // drive:..
기본적으로 에러가 발생하여 프로세스가 종료가 된다면 GetLastError 함수에 의해 error Code가 리턴된다. 이값을 확인하는 방법은 브레이크 포인터를 잡고 debug 모드에서 조사식(Watch Window) 1을 선택한다. 거기에 $err,hr을 추가하면 다음과 같은 에러코드를 찾을 수 있다. 또한 비주얼 스튜디오는 Error Lookup을 제공하는데 도구-오류조회 를 클릭하면 다음과 같은 Window가 뜨고 다음과 같은 값을 주면 그 값에 대한 메시지를 얻을 수 있다. 다음의 메시지는 WinError.h에 정의 되어 있다.