• ベストアンサー

C#のクラスをVB.netで使用したい!

お世話になっております。 C#で、wave音声ファイルを録音する機能を持ったクラスファイルがあります。 これをvb.netで使用したいのですが、使用方法がよくわかりません。 vb.netで「既存項目の追加」で、C#のcsファイルは追加できたのですが、 これをvb.netのモジュールで宣言して使用する方法を教えていただきたいのです。 検索してもうまくヒットせず、こちらで教えていただきたく ご質問させていただきました。 【環境】 ・windows mobile 5.0 pocketPC用プログラム(.net compact frame3.5) よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

・ソリューション中に,VBとC#のプロジェクトを作ります。 ・C#の方はライブラリプロジェクトとしておいて,C#ソースをライブラリの中に追加します。 ・VBからはC#のプロジェクトを参照するように設定します。 これで使えるはずです。 基本的に,ひとつのアセンブリをVBとC#のソースから作ることは出来ません。 一応マルチモジュールアセンブリを使えば複数の開発言語からひとつのアセンブリを作成できるのですが, この方法をVisual Studioはサポートしていませんし,結局ファイルは複数に分離してしまいます。 これらの制限ため,それぞれの言語ごとにプロジェクトを作成する必要があります。

guruguru2
質問者

お礼

お返事遅くなり失礼いたしました。 ありがとうございます。 とても助かりました!

関連するQ&A

  • VB.NETでテンプレート関数・クラス

    VB.NET(.NET2.0ベース)でテンプレートを用いてクラスや関数を定義したいのですが、方法が分かりません。検索してもC#やC++ばかり出てきます。 C#が出てくるのだから、VBでも…と思いましたが、CILに展開される際、型毎に多重宣言でもしているんでしょうか? とりあえず、VB.NETでテンプレートの使い方をご教示頂ければ幸いです。

  • VB.Netの大域変数

    VB6ではイベント制御のため、共通モジュールに大域変数を Public gFlag As Integer のように記述していました。 最近になってVB.Netをはじめましたが、この大域変数がうまく動いてくれません。 とりあえずVB6の共通モジュールはクラスを追加して行うとあり、 クラスを追加して、そこで上記のようにPublicで宣言しました。 ところがFormのコードで使うと宣言されていませんと出ます。 そこで色々と調べてPublicは外部に公開されるメンバ??らしい ということは分かったのですが、クラス自体さっぱりです。 とりあえずクラスのお勉強は後回しにするとして、 大域変数はどのようにすれば使えるようになるのか教えて下さい。

  • VB6.0 VB.NET2003とのクラスの違い

    こんにちは VB6.0でデータベースのソフトを作成しています。 当初VB6.0はVB.NETと違い完全なオブジェクト指向言語ではないと聞いていたので、 フォームの画面ごとに検索、追加、更新、削除、入力チェック,印刷のコードを書いていこうとしました。 しかし、最近そうでもないことがわかりました。 そこで、画面ごとではなく機能ごとに検索、追加、更新、削除、入力チェック,印刷のクラスモジュールをつくり、 どこに何が書かれているかわかるようにコーディングしたいと思います。 VB.NET2003は学生のころやっていたのですが、VB6.0は最近やりだしたのでよくわかっていません。 VB6.0の入門書をみてもクラスについては2~3ページしか触れていません。 VB.NET2003にはできるがVB6.0にはできないクラスの大きな違いを教えてください。 いまのところコンストラクターとオーバーロードはできないということだけわかっています。

  • VB.NET経験者のVB6.0使用感について。

    こんばんは。 VB.NET経験1年程度の学生ですが、今度VB6.0を使ってプログラムを作ることになりました。 私はVB6.0は未経験なのですが、使用感はかなり違うのでしょうか?変数の宣言の方法や存在しない関数など初歩的な部分でありましたら教えてください。 またVB.NETであるコマンドの補完機能はVB6.0でもありますよね? よろしくお願いします。

  • VB.NETのクラスプロジェクトのメソッド等をC#側で利用

    VB.NETのクラスプロジェクトのメソッド等をC#側で利用したいのですが、 参照設定に追加しても使用できません。 C#で使用することは無理なのでしょうか?

  • VB6.0を使用しています

    VB6.0を使用しています VC6.0でdefファイルで宣言してDLLを作成し VBのEXEよりDLLをCALLしています。 VBではDLLの関数をDeclareで宣言しています。 問題なのは ちょっと前まで問題なく動いたDLLですが 新規にDLL関数を追加したら EXEではちゃんと呼び出して処理を行なってくれておりますが VBのデバッグ起動で呼び出すと、その新規のDLLの関数がありませんと メッセージを通知して止まってしまいます、 EXEでは動くのにデバッグ起動ではだめなんでしょうか??不思議です もし、ご存知の方がいらっしゃいましたら教えてください。

  • VB.NETでXMLのデータをやり取りする方法

    VB.NET 2003を使用して、Windowsソフトを開発しています。 データの保存にXMLを使用したいのですが、読み出せるのですが書き込めません。 どのような方法でもいいので、既存XMLファイルにデータを追加する方法をご教授願えませんか? また、ご存知であればでよいのですが、VB.NETでWindowsソフト開発で、XMLに関する解説が詳しく掲載されているサイトはありませんか?

  • Vb.netのグローバル変数の宣言の仕方の質問

    こんばんわ! VB6.0からの移行でVB.net2012に挑戦中なんですが、グローバル変数の宣言の仕方で分からないことがあり質問しに着ました! 内容 モジュール内で public hoge as string="aaa" と宣言するのと モジュール内で public hoge as string と宣言しておいて フォーム起動時に hoge="aaa" と宣言するのにどのような違いがあるのでしょうか? hogeの変数を変更したいのですが、上記の方法だと動いて、下記の方法だと動かないのですが・・・ まだ良く分かっていないので、程度の低い質問で申し訳ないのですが、アドバイスのほどよろしくお願いいたします。

  • VB.NETとC#の違い

    JOBで使用する開発言語をVB.NETにするかC#にするかで迷っています。 画面アプリと裏タスクという構成ですが、 今までは画面=VB、裏タスク=Cという固定概念でしたが、このままでよいのか疑問です。 下記は私なりに調べてみた比較なのですが、 ●従来Cの短所とされてきたこと ・画面設計のし易さ  C#はVBと同じようにVisualStudio上で簡単に設計できる。イベントドリブンも可能。 ・言語のとっつき易さ C#でASPを組んだ経験もありますので大して抵抗はありません。                しかも、VB6.0→VB.NETの移行は従来のVB5.0→6.0へ移行ほど安易ではない。 ●従来Cの長所とされてきたこと ・処理速度     VB.NETと差が無いような記事も見たことがあります。 こう考えるとC#とVBの差が、どんどん縮んできており、長所短所を見出すことができません。 いったい違いって何でしょうか、ご存知の方、ご教示いただきたくお願いいたします。

  • Encode::JP::Mobileを使用してみたいのですが!

    Encode::JP::Mobile を使用してみたいのですが、教えてください。 このモジュール?は、どのように使用するのでしょうか? この http://search.cpan.org/~miyagawa/Encode-JP-Mobile-0.03/ から、 ダウンロードしたら、わからないファイル達がいっぱいでてきて・・・ モジュールをダウンロードして、サーバーへアップロードして、Perlで、宣言して使用って感じじゃないのでしょうか?

専門家に質問してみよう