• ベストアンサー

VS2008でVBとC++を一つのプロジェクトにすることができますか?

VB6.0からの移行組です。現在VB6.0をメインにしてVC++6.0で作ったdllをVBで呼んでいます。VBでデバッグ中にC++で作ったdll内にバグがあった場合にどこにバグがあるかわからず不便です。 VS2008ではVBとVC++を一つのプロジェクトにまとめる事ができますか? そうすればデバッグ中にVBとVC++のコードを一連の流れで動かしてやれば、どこがおかしいのか分かりやすくて便利なんですが。 (C++がコンパイル型だから無理かな・・・) 素人な質問ですみませんがよろしくお願いします。

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

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

プロジェクト単位でまとめることは可能ですよ # 単一ソリューション内に複数のプロジェクトといった形になります VBかCかどちらかでソリューションを作成して メニューから ファイル > 新規作成 > プロジェクト を実行して 相手のプロジェクトを生成します このときのダイアログの『ソリューション(S)』の選択を『ソリューションに追加』に変更しておきます # 双方の名前空間(namespace)の追加が必要だったかもしれません C側のコードが アンマネージ(ネイティブC)なのであれば VB側のプロジェクトのプロパティのデバッグタブにある 『アンマネージコード デバッグを有効にする』のチェックも確認しましょう

subarist00
質問者

お礼

ソリューションというのができたんですね。知りませんでした。 >『アンマネージコード デバッグを有効にする』のチェックも確認しましょう やってみました。C++のコード中で止めたいところで止まってくれます。ありがとうございます。まさにいい感じで動いています。

関連するQ&A

  • VBとVC++を両方使うプログラム(VS2008)

    VBとVC++を両方使うプログラムのデバッグなんですが、VBとVC++を両方使って作ったプログラム全体を一つのソリューションにまとめて統合環境で動かしてデバッグしたいです。VS2008でVBとVC++を両方使うプログラムの作り方をサンプル付で説明した本はありませんでしょうか? MSDN読んでもさっぱりわかりません。アンマネージかマネージかアクティブXかというと、dllのほうは基本的にOpenGL使うためなので当面はアンマネージでいいかも。でも今後はマネージドになっていくのでしょう。 VB6/VC6の頃はVC++でdllを作ってVBから呼び出してましたが、デバッグのときにdll側にバグがあるとVB側からどういうデータが来ていたのかわからずに苦労していました。まとめて動かして変数の値を追えれば便利です。 無理せず一つの言語でやれといわれそうですが、やはりVCの方が速度は速いし何よりも両方使えれば両方のサンプルコードが使えるので便利だし、何よりC++を使わないと上達しないのでやるしかありません。そんなわけでよろしくお願いします。

  • VB6のプログラムをVS2017で開くには?

    VB6や、VC++で作成されたプログラムを VisualStduio2017へ移行することになりました。 VisualStduio2017で、VB6やVC++のプロジェクトを開いて コンパイルエラーになる部分を手修正していこうと思ったのですが、 そもそも開くことができません。 新たにプロジェクトを作成して、ソースコピーをして貼り付けし、 コンパイルエラーになる部分を手修正するようなやり方ぐらいしかないでしょうか?

  • VB.NET 異なるプロジェクト間のデバッグ

    こんにちわ。 いまVB.NET2003で開発している者です。 あるVBProjファイルが参照設定であるdllファイルを参照しています。 VBProjファイル内のあるコードにブレークを張って, dllファイル側内にもブレークを張って, プロジェクトをまたがって,動的にデバッグしたいのですが, どうすれば良いでしょうか? 教えてください。よろしくお願いします。

  • C#からCで作成したDLLにステップインできません

    C#からCで作成したDLLにステップインできません。 対策としては以下を行いましたが、ステップインできませんでした。他の対策を知っていたら教えてください! 環境:C#, CともにVS2008, Windows XP professional ・プロジェクトのプロパティのデバッグタブで、「アンマネージのデバッグを~」にチェックを入れる。 ・完全なソースを必要とするのチェックをはずす。 ・C#のexeと同一DIRにdllと、pdbファイルを配置する。 ・全てデバッグでコンパイルする。

  • VC++で作成したDLLのデバッグ

    VC++6.0で作成したDLLファイルのデバッグ作業でVBでコンパイルした EXEファイルを使うと、例外エラーが発生してしまいます。 EXEファイルにデバッグ情報が書き込まれるのでしょうか? 次からそのEXEファイルを利用すると、やはり例外エラーがおきます。 (それに長い間気づかず、ずっとバグ探しをしてました。) VC++のDLLファイルのデバッグモードはVBのEXEファイルでは利用できないのでしょうか?

  • VBがデバッグ時落ちてしまう

    VC6.0でDLLを作成し、VB6.0で呼び出すプログラムを作成しています。 DLLの内容はWindowハンドルを引数にしてそのハンドルを持つWindow上にListboxを作成するというようなものです。(もともとC言語用のDLLだったものをVBで使いまわしています) このプログラムをデバッグ実行し、デバッガ上で停止[実行->終了]とすると、VB6.exeがアプリケーションエラーで落ちてしまいます。(DLLの関数を呼ばない限り大丈夫です) デバッグ実行でも普通に終了(アプリケーションでの終了)であれば正常に終了してくれます。 このままですと、実行時エラーで止まる度にVB6.exeが落ちてしまい非常に不便です。 このような現象で困った方いませんか? 解決策がありましたら教えてください。

  • VBとCの統合

    VisualBasicで書いたプロジェクトとCで書いたプロジェクトは統合できるのですか? 具体的に言いますと、VBプロジェクト内 → Cプロジェクトを呼び出・実行 → VBプロジェクトに戻る(可能であれば戻り値も受取る) といった流れになります。 これは可能でしょうか? もし不可であるなら、C#で書いたプロジェクトとCで書いたプロジェクトは統合可能でしょうか? 現在システム作成中で、私が作ったのはVBで、組み込みたいのがCです。。。どうかよろしくお願いします!!

  • VB 6 を VS 2012に変換するには?

    長いこと、VB6で開発をしてきました。このプログラムはハードはRS-232Cを使い入力したデーターをグラフや表で表示したりするものです。VB6を何も不足もなく使って来ましたが、時代に取り残されないように、VisualStudio2012 Professional with MSDN(以下VS2012と略す)を購入しました。ところがプロジェクトファイルの拡張子が違うので読み込めないのです。拡張子が違うことは内容も違うことが考えられます。VB6 ->VS2012 変換をする方法をご教授ください。VS2010に変換する方法で結構ですので皆様、教えて下さい。 ツールボックスからボタンや何やら、最初から同じ名前で作り、ベーシックのソースだけコピーすれば出来るのではと、一度は試しましたが、例として UnLoad xxx 等の重要な関数が付いていないようでコンパイルできないのです。 この方法で、解決された方がおりましたら、回答、お願いいたします。

  • vbaとvb 「デバッグ」「ビルド」

    vbaの「デバッグ→VBAプロジェクトのコンパイル」=VB.netで言う「ビルド」、 vbaの「実行」=VB.netの「デバッグ開始」 であってますか? デバッグ=コンパイル=ビルドなのか混乱しています。 いろいろな言葉が出てきて頭がぐちゃぐちゃなので整理したいです。 よろしくお願いします。

  • VB5.0からVB6.0への移行について

    VB5.0からVB6.0への移行について プログラマー初心者です。 VB5.0で作成したプロジェクトを、VB6.0で開くと、 【'C:\...\marquee.ocx'を読み込めません。--プロジェクトのロードを続けますか?】と 【'C:\...\raocx32.dll'を読み込めません。--プロジェクトのロードを続けますか?】の メッセージが出力されます。 "marquee.ocx"と"raocx32.dll"は、ともにWebサイトよりダウンロードして、 'C:\WINDOWS\system32'に保管しましたが、認識しません。 コマンドプロンプトで、 'regsvr32 marquee.ocx'を実行させましたが、 【"marquee.ocx"は実行可能ファイルではないか、 またはこのファイルのヘルパが登録されていない可能性があります。】 というメッセージが出力されます。 "marquee.ocx"と"raocx32.dll"を読み込ませたいのですが、 方法を教えてください。 宜しくお願い致します。

専門家に質問してみよう