DLLの補足 DLL作成の指針やDLLに関連するファイルについて。 暗黙的リンクと明示的リンクの使い分け DLLに関係するファイル ソースファイル defファイル libファイル expファイル dllファイル [/2007-09-28] 序数 暗黙的リンクと明示的リンク DLLの呼び出し方法には、暗黙的(静的)リンクと明示的(動的)リンクがある。 暗黙的リンクと明示的リンクの特徴(メリット・デメリット) 暗黙的(静的)リンク 明示的(動的)リンク 関数の宣言
DLLの補足 DLL作成の指針やDLLに関連するファイルについて。 暗黙的リンクと明示的リンクの使い分け DLLに関係するファイル ソースファイル defファイル libファイル expファイル dllファイル [/2007-09-28] 序数 暗黙的リンクと明示的リンク DLLの呼び出し方法には、暗黙的(静的)リンクと明示的(動的)リンクがある。 暗黙的リンクと明示的リンクの特徴(メリット・デメリット) 暗黙的(静的)リンク 明示的(動的)リンク 関数の宣言
~DLLの作成~ VC++を使ってるとして説明します。 まずDLLのプロジェクトを新規作成しましょう。 プロジェクト名がDLLのファイル名になると思います。 新規作成>Win32 Dynamic-Linc Library を選択します。 OKボタンを押し、次は 空のDLLプロジェクト を選択し、終了ボタンを押します。 これでプロジェクトは出来ました。 次はファイルを追加しましょう。 新規作成>C/C++ ソースファイル を選択します。 プロジェクトへ追加にチェックが入ってることを確認して、ファイル名を適当に決めてOKボタンを押します。 ここではプロジェクト名を dlltest ファイル名を dlltest.cpp とします。 もう一度ファイルを追加します。次はファイル名を dlltest.def とします。 これでファイルの準備は終りました。 次は中身です。 以下のように書きます ////
DLLの作成(1) ここでは、ごく簡単なDLLの作成方法と、その使用方法について説明する。 DLLの作成方法 DLLプロジェクトを生成する VC++の「ファイル」−「新規作成」メニューで新規作成ダイアログを開き、「プロジェクト」タブを選択する。 「MFC AppWizard(dll)」を選択し、プロジェクト名を「Test_DLL」としてOKボタンを押す。 次の画面で、「作成するDLLの種類」を「MFCの拡張DLL(MFCの共有DLL使用)」とし、終了ボタンを押す。 次の画面ではそのままOKボタンを押す。これでプロジェクトのスケルトンが完成する。 関数を追加する まずヘッダーを作成する。「ファイル」−「新規作成」メニューで新規作成ダイアログを開き、 「ファイル」タブを選択する。「C/C++ ヘッダー ファイル」を選択し、ファイル名を「TestMsgBox.h」とす
まずC++でこんな.dllを作る。仮にgreeting.dllとする。 #include <stdio.h> extern "C" { typedef const char* (*WhatDoYouSay)(); __declspec(dllexport) void Greeting(WhatDoYouSay callback) { printf("Greeting: %s\n",(*callback)()); } } この場合C#からの呼び出しは using System; using System.Runtime.Interopservices; class Program { delegate string WhatDoYouSay(); [DllImport("greeting.dll")] static extern void Greeting(WhatDoYouSay call
VBは、VB2005以降として回答します(それ以前のバージョンならば、2005以降のバージョンに切り替える事をおすすめします)。 [.NET仕様時] また、DLLにも種類があって、それぞれで事情が異なります。 .NETテクノロジー関連ならば、比較的連携は簡単です。 なぜならば、.NETでは、言語違いがあっても、コンパイル後のPGの規格を統一しています。 よって、互いにリンクして連携することが、比較的簡単です。 具体的な方法は、以下参照。 DLLは、C♯として解説していますが、VC++.NET(CLR)の場合も同じです。 http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1020326470 なお、VC++は、.NET以前の技術のプロジェクト(Win32、MFC、ATL)もありますので、上記は、.NET仕様のCLRプロジェクトに
C# から C++(dllexportしたクラス) のDLLを呼び出す方法 ネットを参考に次のように作りました。 ●C++呼び出され側 DLL (Visual C++ 2008 Express) class __declspec(dllexport) Decoder { public: ....Decoder(); ....virtual ~Decoder(); ....bool Initialize(); ....bool DoDecode(const WCHAR* in_dir_name,const WCHAR* out_dir_name, ................int start_frame,int finish_frame); }; ●C# 呼び出し側 (Visual C# 2008 Express) namespace TgkMM.Core.Coder { ....cl
Redmine.JP Blog オープンソースのプロジェクト管理ソフトウェアRedmineに関するニュースや、より活用するためのtipsなどを掲載します Redmine 0.9から、Redmine上の特定URLにアクセスすることによりSubversion等のリポジトリの情報を読み込ませることができるようになります。例えば、Subversionへのコミット後に実行されるpost-commitスクリプトからそのURLへGETリクエストを行うことにより、コミットと同時にRedmineに最新のリポジトリの情報を読み込ませることができます。 コミット情報の同期の問題 Redmineでは、「リポジトリ」画面を開くまではリポジトリへの最新のコミット情報が取り込まれません。これにより、活動画面に最新のコミット情報が表示されない、チケット表示画面で関係するリビジョンが表示されないなどの問題が発生することがあ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く