何時も参考にしています
開発環境
WindowsXP
VB6.0
実効環境
WindowsXP
WindowsVista
EXEからActivexEXEを起動して、ActivexEXEの画面(別ウィンドウ)を表示しています
XP環境では、ActivexEXEを呼出すと、ActivexEXEの画面が最前面に表示されていたのですが
Vista環境で実行すると、呼出されたActivexEXEの画面が前面に表示されません
(呼出したEXEの背面に表示されてしまいます。)
補足
・呼び出し元のEXEもActivexEXEも全画面表示です。
・呼び出し元のEXEはActivexEXEを呼出しても終了しません
お手数ですが
何か知っている人が居ましたら
情報お願いします
setforeground apiを使うとか。
私の場合、Excelでしたが、同じ現象で悩みました。
WinXPではVisible=Trueだけで最前面に表示されていたのが、
Vista環境では背面に表示されてしまいました。
そこでAPI関数SetWindowPosを利用して、呼び出したExcelを前面に表示する
処理を追加しましたが・・・。
VistaとXPでは実行アプリに対するデフォルト処理が違っているように
感じましたが。
外していたらすみません。
ツイート | ![]() |