MochiuWiki : SUSE, EC, PCB
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
検索
個人用ツール
ログイン
Toggle dark mode
名前空間
ページ
議論
表示
閲覧
ソースを閲覧
履歴を表示
ライブラリの基礎 - DLLの作成(C/C++/MFC)のソースを表示
提供: MochiuWiki : SUSE, EC, PCB
←
ライブラリの基礎 - DLLの作成(C/C++/MFC)
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループのいずれかに属する利用者のみが実行できます:
管理者
、new-group。
このページのソースの閲覧やコピーができます。
== 概要 == MFCを使ったDLLには、以下の2つの種類がある。<br> # 1つ目は"拡張DLL"で、DLLを使用するEXEやDLLもMFCで作成する時にのみ使うことができる。 # 2つ目は"MFCの共有DLLを使用"(Regular DLL)で、これは内部的にMFCそのものを持っているため、DLLを使用するEXEやDLLをMFCで作成しなくても使用できる。 <br><br> == DLLの作成方法 == * defファイルを作成しない場合 Visual Studioの[プロジェクト]→[プロパティ]を選択する。<br> [C++]→[プリプロセッサの定義]に"DLL"プリプロセッサを追加する。(“Stdafx.h”ファイルに”DLL”プリプロセッサを記載してもよい)<br> <br> まず、"MainDLL.h"ファイルの先頭に以下のソースコードを追加する。<br> <source lang="c++"> MainDLL.h // ファイルの先頭に以下を追加する。 #ifndef __MAINDLL_H__ #define __MAINDLL_H__ #ifdef DLL #define DLL_EXPORT __declspec(dllexport) #else #define DLL_EXPORT __declspec(dllimport) #endif // 以下略 #endif //__MAINDLL_H__ </source> <br> 次に、上記の"MainDLL.h"ファイルにエクスポートしたい関数を以下のように記載する。<br> <source lang="c++"> MainDLL.h #ifdef __cplusplus extern "C" { #endif DLL_EXPORT int WINAPI SampleFunc(CString &p_rcStr, CWnd *p_pcWnd); #ifdef __cplusplus } #endif </source> <br> "MainDLL.cpp"ファイルの先頭に以下を記載する。<br> <source lang="c++"> MainDLL.cpp #include "StdAfx.h" #include "MainDLL.h" </source> <br> "MainDLL.cpp"ファイルにて関数を作成する時は、以下のように記載する。<br> <source lang="c++"> MainDLL.cpp extern "C" int WINAPI SampleFunc(CString &p_rcStr, CWnd *p_pcWnd) { // 以下略 } </source> <br><br> __FORCETOC__ [[カテゴリ:MFC]]
ライブラリの基礎 - DLLの作成(C/C++/MFC)
に戻る。
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
Collapse