タイトル : Re^4: アプリケーションの起動について 投稿日 : 2008/09/01(Mon) 11:34 投稿者 : じゅん
> Shell関数 での起動は、どのように設定しておられるのでしょうか? > (第二引数等) > できれば、他の人が事象を再現できるようなコードを投稿して下さい。 返答ありがとうございます。 以下がコードです。 ●画面Aから画面Bの起動コード Shell(Trim(wstrAppName), vbNormalFocus, False) ※wstrAppName には、画面BのEXEまでのパスがきます。 ●画面Bからの印刷参照のコード Shell(objclass.gFunc_ReadAccPath & " " & objclass.GetAppPath & basCommon.basCommon.gcMASTERREP & " " & " /x M_地域マスタリスト画面", vbMaximizedFocus, True) Me.TopMost = True Me.TopMost = False MsgBox("表示処理が終了しました。", vbInformation) ※参照画面(Access)が立ち上がり、閉じると、画面Aが一番手前にきてします。 尚、参照画面が完全に表示されると、デスクトップの下(ツールバー)にある、画面Bが消えてしまいます。Vistaでコンパイルしたら消えるが、XPでコンパイルすると、消えない現象も起きています。 ●画面Bからの印刷コード Me.TopMost = True Shell(objclass.gFunc_ReadAccPath & " " & objclass.GetAppPath & basCommon.basCommon.gcMASTERREP & " " & " /x M_地域マスタリスト", , True) Me.TopMost = False MsgBox("印刷処理が終了しました。", MsgBoxStyle.MsgBoxSetForeground) ※印刷時は Me.TopMost = True と Me.TopMost = Fase を指定すると、 画面Bは一番手前にきます。無いと、画面Aが一番手前にきます。 尚、Msgboxの引数をMsgBoxStyle.MsgBoxSetForeground ではなく、vbInformation にすると、画面Bは一番手前にくるが、メッセージが表示され、Enterキーを押下すると、画面AでEnterキーが押された事なり。画面Bを立ち上げようとしてしましいます。 以上がコードです。よろしくお願いします。 |