人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

以下の制約でアプリケーションを開発します。(開発環境は、VisualStudio 2008)

VB ===> ユーザーインターフェース部分担当
VC++ ===> ファイルアクセス、シリアル通信、TCP/IP通信等、デバイス制御、その他、面倒なところ(?)

以上のような分担で作成する場合、VC++でDLLを作成して、
VBから、そのDLLを使用するのが一般的かなと思っているのですが、その
具体的な方法(サンプルコードや、使用するキーワード等)、作成手順を教えて下さい。

ちなみに下記のページなどは、参考になりました。
http://www.ne.jp/asahi/hishidama/home/tech/vcpp/dll.html


●質問者: futurista
●カテゴリ:コンピュータ
✍キーワード:DLL TCP/IP VB VC++ VisualStudio
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● HALSPECIAL
●50ポイント

ファイルアクセス、シリアル通信、TCP/IP通信等、・・・

.NETには多くのコンポーネントがそろっているので、個人的にはVBで完結したいところです。

連携には、引数の型合わせが面倒になるかと思います。(とくに構造体が絡んでくると)

以下、参考になりますか?


ソフトウェア・ラボ

C++ネイティブDLL

C++ネイティブDLLの開発

VBから参照


型合わせはこちら、

全ては時の中に…

【VB.NET】Windows APIの利用


.NET TIPS

Win32 APIやDLL関数を呼び出すには?

◎質問者からの返答

回答ありがとうございます。

リンク先を参照しましたが、かなり参考になりそうです。

確かに、.NETですので、ひとつの言語で集約したいところではありますね。

まあ、いろいろありまして。

まだ、製造工程ではないため、実際に教えて頂いたことを使用するのは先なのですが、

どうも、ありがとうごさいました。


2 ● mattn
●20ポイント

作成するDLLのインタフェースが、どの様なものを期待されているか分かりませんが、VB.NETからは

<DllImport("mydll")> _
Private Shared Function MyDllProc( _
 ByVal szParameter As String) As Integer
End Function

といった様にDllImportを使います。

COMポート等のハンドルを持ちまわるのであれば、

<DllImport("mydll")> _
Private Shared Function MyOpen( _
 ByVal szPortName As String) As Long
End Function

<DllImport("mydll")> _
Private Shared Function MySend( _
 ByVal handle As Long, _
 ByVal szPortName As String) As Long
End Function

といった様にVB.NET側でハンドルを持っておくのが良いのかもしれませんね。

http://q.hatena.ne.jp/

◎質問者からの返答

回答ありがとうございます。

パッとよくわかりませんでしたが。。

まだ、製造工程ではないため、実際に教えて頂いたことを使用するのは先なのですが、

どうも、ありがとうごさいました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ