@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

WinXPで作成したWinアプリがVistaで動作しない時のデバッグ方法について

1
投稿者投稿内容
未記入
会議室デビュー日: 2008/01/15
投稿数: 2
投稿日時: 2008-01-15 19:53
環境
開発環境 WinXP Visual Studio 2005 (.net 2.0)
動作環境 Vista .net2.0 QuickTime 7.2

C#でQuickTimeのコンポーネントを貼り付けて、
再生するという単純なアプリケーションを作りました。

COMコンポーネントで
C:\Program Files\QuickTime\QTOControll.dllを追加して
貼り付けてURLを指定するのみ。

XPの環境では、指定したファイルが再生させることを確認しています。
Vistaの環境では次のような問題が発生します。

System.Reflection.TargetInvocationException はハンドルされませんでした。
Message="'AxQTControl' コントロールのウィンドウ ハンドルを取得できません。ウィンドウなしの ActiveX コントロールはサポートされていません。"
Source="System.Windows.Forms"
という内容の例外が発生します。

この問題は、実行ファイルを直接実行した時のみ起こります。
Visual Studioのデバッグで実行すると動作します。

何を疑うべきでしょうか。
ぴんふ
ベテラン
会議室デビュー日: 2006/07/13
投稿数: 80
投稿日時: 2008-01-16 11:06
こんにちは。ぴんふです。
引用:
Visual Studioのデバッグで実行すると動作します。


Vista上でデバグしたということでしょうか?

引用:
何を疑うべきでしょうか。


開発環境と動作環境でOSが異なるのはなぜでしょうか?
ブラウザ上で動くものを開発しているわけではないですよね?
であればOSをあわせるべきではないですか?
(某大手ポータルサイトのチャットシステムでもXpではOKでVistaではNGなんて機能がありますが・・・)
Vista上で動かしたいのならVistaに開発環境を整えるのが早道だと思います。
未記入
会議室デビュー日: 2008/01/15
投稿数: 2
投稿日時: 2008-01-16 13:16
Vista上で開発環境を用意して開発するにしました。

'AxQTControl'コントロールのウィンドウ ハンドルを取得できません。
ウィンドウなしのActiveXコントロールはサポートされていません。

現在はVista上でデバックしています。

Visual Studio上で実行したら動いたと書きましたが、
VistaマシンでVisual Studio2005で動作させたところ動作しませんでした。
どうやら私の勘違いだったようです。すみません。

>ブラウザ上で動くものを開発しているわけではないですよね?
はい、Windowsアプリケーションを作成しています。

>開発環境と動作環境でOSが異なるのはなぜでしょうか?
Vistaはメモリの使用量が多いため開発時に快適な動作ができない場合があるので。

>ウィンドウなしの ActiveX
ActiveXの知識が乏しいためウィンドウなしという部分が何を指しているのか
わからないのですがウィンドウがあれば動くのでしょうか。
1

スキルアップ/キャリアアップ(JOB@IT)