C#2010でVC++2010で作ったDLLを使う-その2- [備忘録]
スポンサードリンク
こんにちは菊月です。
今回は前回の記事の続きを書いていきます。
http://umengine.blog.so-net.ne.jp/2014-08-31
今回はC#側のプログラムを書いていきます。
Part1
http://umengine.blog.so-net.ne.jp/2014-08-31
Part3
http://umengine.blog.so-net.ne.jp/2014-09-12
(1) C#を開き,新しいプロジェクトを選択。
(3) 「Windowsフォームアプリケーション」を選択し、適当な名前を付ける。
ここでは”DllTestCsharp”とした。
(3) 作成したDLLファイル(ここでは前回作成した”DllTestFile.dll”)を、
C#プロジェクトファイル内の実行ファイル内にコピーする必要がある。
ここでは「DllTestCsharp」→「bin」→「Debug」へコピーする。
(4) 「ツールボックス」より、ボタン(button)を選択し、「Form1」画面内の適当な場所に配置する。
図1
(5) 図1で、配置したボタンをダブルクリックすると図2のような画面が現れる。
ここではプログラムを図3のように変更する。
図2
図3
(6) 「デバッグ」→「デバッグの開始」、もしくはF5キーでデッバグを行うとプログラムが実行される。
実行するとアプリケーションの画面が現れる。
(7) フォームアプリケーションの実行画面内のボタンをクリックする。
これによりプロジェクトの実行ファイル内に”Test.txt”が作成される。
また、中身が”DLL file test\n”となっているか確認する。
因に、”\n”は改行を表すため,表示はされないので注意
図4
次回はDLL内で関数が増えた場合についてお話しします。
前の記事はこちら
http://umengine.blog.so-net.ne.jp/2014-08-31
プログラムのテキスト版
必要があればコピーして使ってください
・Form1.cs (DllTestCsharpのソースファイル)
-------------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
//これを追加することでDLLのインポートができる
using System.Runtime.InteropServices;
namespace DllTestCsharp{
public partial class Form1 : Form
{
//この2行で作成したDLLの取り込みと使用する関数の指定ができる。
[DllImport("DllTestFile.dll")]
public static extern int FileWrite();
public Form1()
{
InitializeComponent();
}
//ボタン1がクリックされたとき
private void button1_Click (object sender, EventArgs e)
{
//DLLで作成した関数"FileWrtie"
FileWrite();
}
}
}
-------------------------------------------------------------------------------
スポンサードリンク
2014-09-01 17:53
nice!(0)
コメント(0)
トラックバック(0)
コメント 0