VC++(MFC):
スタティックリンクライブラリの作成
Windows 11 Visual Studio 2022
スタティックリンクライブラリを作成し、MFCで使用します。
このライブラリには、以下の8つの関数が含まれています。
(グローバル)
・void clearBack(CDC* pdc, int width, int height, COLORREF col);
・void clearBack(HDC hdc, int width, int height, COLORREF col);
・void clearBack(CDC* pdc, int x0, int y0, int w, int h, COLORREF col);
・void clearBack(HDC hdc, int x0, int y0, int w, int h, COLORREF col);
・void drawTextA(CDC* pdc, RECT rect, int nH, CString str,
COLORREF tc, CString facename, DWORD effects, UINT nFormat);
・int loadImage(CString FPath, CDC* pdcWork,int dispW,int dispH,
COLORREF Haikei);
(クラス)
・static int add(int a, int b);
・static CString addstr(CString strA, CString strB);
<ライブラリ>
・VisualStudioでスタティックリンクライブラリ「myLibrary」を作成し(手順省略)、
プロパティの・・C/C++のプリコンパイル済ヘッダーは、使用しないに設定する。
空の「myfunc.h」および「myfunc.cpp」を追加する。
ソースコードを記入し、「スタティックライブラリでMFCを使用する、
マルチスレッドデバッグ(/MTd)、Releaseモード」でビルドする。
<アプリケーション>
・VisualStudioでMFCアプリケーション「useLibDlg」を作成し(手順省略)、
・C/C++のプリコンパイル済ヘッダーは、使用しないに設定する。
・C/C++、全般、追加のインクルードディレクトリに、myfunc.hが入っている
フォルダ・パスを記入する。
・リンカー、全般、追加のライブラリデレクトリに、myLibrary.libが入っている
フォルダ・パスを記入する。
・リンカー、入力、追加の依存ファイルに、「myLibrary.lib」を記入。
・デバッグ、作業デレクトリに、myLibrary.dllが入っているフォルダ・パスを
記入する。 または、useLibDlgのx64のDebug/Releaseフォルダに
myLibrary.dllをコピーする。
・ソースコードを記入し、スタティックライブラリでMFCを使用する、
マルチスレッドデバッグ(/MTd)、Debugモードでビルドおよび、デバッグ
をする。
デバッグ終了後、(/MTd)、Releaseモードでビルドする。なぜか、(/MT)
ではエラー。
1:スタティックリンクライブラリ myLibraryのmyfunc.hおよび、myfunc.cpp
2:MFCアプリケーション useLibDlg(ダイアログベース、タイトルバー付)
参考:ソース・コード