| | |
| | | // KLink1.cpp : 定义 DLL 的导出函数。
|
| | | // KLink1.cpp: 定义 DLL 的初始化例程。
|
| | | //
|
| | |
|
| | | #include "pch.h"
|
| | | #include "framework.h"
|
| | | #include "KLink1.h"
|
| | | #include "afxdialogex.h"
|
| | | #include "CDialogCommSet1.h"
|
| | |
|
| | | #ifdef _DEBUG
|
| | | #define new DEBUG_NEW
|
| | | #endif
|
| | |
|
| | | //
|
| | | //TODO: 如果此 DLL 相对于 MFC DLL 是动态链接的,
|
| | | // 则从此 DLL 导出的任何调入
|
| | | // MFC 的函数必须将 AFX_MANAGE_STATE 宏添加到
|
| | | // 该函数的最前面。
|
| | | //
|
| | | // 例如: |
| | | //
|
| | | // extern "C" BOOL PASCAL EXPORT ExportedFunction()
|
| | | // {
|
| | | // AFX_MANAGE_STATE(AfxGetStaticModuleState());
|
| | | // // 此处为普通函数体
|
| | | // }
|
| | | //
|
| | | // 此宏先于任何 MFC 调用
|
| | | // 出现在每个函数中十分重要。 这意味着
|
| | | // 它必须作为以下项中的第一个语句:
|
| | | // 出现,甚至先于所有对象变量声明,
|
| | | // 这是因为它们的构造函数可能生成 MFC
|
| | | // DLL 调用。
|
| | | //
|
| | | // 有关其他详细信息,
|
| | | // 请参阅 MFC 技术说明 33 和 58。
|
| | | //
|
| | |
|
| | | // CKLink1App
|
| | |
|
| | | BEGIN_MESSAGE_MAP(CKLink1App, CWinApp)
|
| | | END_MESSAGE_MAP()
|
| | |
|
| | |
|
| | | // 这是导出变量的一个示例
|
| | | KLINK1_API int nKLink1=0;
|
| | | // CKLink1App 构造
|
| | |
|
| | | // 这是导出函数的一个示例。
|
| | | KLINK1_API int fnKLink1(void)
|
| | | CKLink1App::CKLink1App()
|
| | | {
|
| | | return 0;
|
| | | // TODO: 在此处添加构造代码,
|
| | | // 将所有重要的初始化放置在 InitInstance 中
|
| | | }
|
| | |
|
| | | // 这是已导出类的构造函数。
|
| | | CKLink1::CKLink1()
|
| | |
|
| | | // 唯一的 CKLink1App 对象
|
| | |
|
| | | CKLink1App theApp;
|
| | |
|
| | |
|
| | | // CKLink1App 初始化
|
| | |
|
| | | BOOL CKLink1App::InitInstance()
|
| | | {
|
| | | return;
|
| | | CWinApp::InitInstance();
|
| | |
|
| | | if (!AfxSocketInit())
|
| | | {
|
| | | AfxMessageBox(IDP_SOCKETS_INIT_FAILED);
|
| | | return FALSE;
|
| | | }
|
| | | |
| | | return TRUE;
|
| | | }
|
| | |
|
| | |
|
| | | int CKLink1App::ExitInstance()
|
| | | {
|
| | | // TODO: 在此添加专用代码和/或调用基类
|
| | |
|
| | | return CWinApp::ExitInstance();
|
| | | }
|