ショートカットからのアプリ起動時のウィンドウサイズの指定について

このQ&Aのポイント
  • VB側での制御が難しいと思われたので、起動オプションがないかを調べて、いろいろと試してみたところ、Safari.exeのショートカットを作成してショートカットのウィンドウサイズを「最小化」に指定すると、Safariが最小化で起動することが分かりました。
  • ショートカットのプロパティでウィンドウサイズを「最小化」に指定することで、Safari.exeが最小化で起動する仕組みがあります。内部的には最小化で起動するように指定ができているのだと思われます。
  • ショートカットからアプリを起動する際には、特定のコマンドが実行されることがあります。しかし、具体的なコマンドを確認するツールは一般的には存在しません。
回答を見る
  • ベストアンサー

ショートカットからのアプリ起動時のウィンドウサイズの指定について

先日、以下の質問をさせていただきました。 http://oshiete1.goo.ne.jp/qa5753210.html VB側での制御が難しいと思われたので、起動オプションがないかを調べて、いろいろと試してみたところ、Safari.exeのショートカットを作成してショートカットのウィンドウサイズを「最小化」に指定すると、Safariが最小化で起動しました。 これは、内部的には最小化で起動するように指定ができているのだと思うのですが、ショートカットのプロパティで「最小化」を指定した場合、どのような処理が行われているのでしょうか? 「Safari.exe」に何かの起動オプションが付いているのでしょうか? お分かりになるかた、おられましたら教えていただきたく書き込みさせていただきました。 あと、こういう場合にOSはどのような処理を行っているか、確認できるようなツールはないでしょうか?(キーロガーのような) ショートカットを起動したときに、どのようなコマンドが実行されているか確認できるようなソフトはないでしょうか? 宜しくお願いします。

  • S202
  • お礼率84% (142/169)

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

  • ベストアンサー
noname#110816
noname#110816
回答No.2

私の場合ですが、このような場合は、シュートカットであれ、ファイルやフォルダであれ、shell操作であるわけですから、いつも ShellExecuteEx または ShellExecute を使用しています。 表示方法は SHELLEXECUTEINFO Structure の nShow で指定すれば、下記の中から任意に設定できます。 SW_HIDE SW_MAXIMIZE SW_MINIMIZE SW_RESTORE SW_SHOW SW_SHOWDEFAULT SW_SHOWMAXIMIZED SW_SHOWMINIMIZED SW_SHOWMINNOACTIVE SW_SHOWNA SW_SHOWNOACTIVATE SW_SHOWNORMAL -----マイクロソフトサイト参照 ---ShellExecuteEx http://msdn.microsoft.com/en-us/library/bb762154(VS.85).aspx ---SHELLEXECUTEINFO Structure http://msdn.microsoft.com/en-us/library/bb759784(VS.85).aspx

S202
質問者

お礼

アドバイスありがとうございました。 結局、AutoSizerというアプリ側でSafariのウィンドウの制御をすることにしました。

その他の回答 (2)

noname#110816
noname#110816
回答No.3

No.2 のタイプミス訂正です。 誤:「シュートカットであれ、」 正:「ショートカットであれ、」 > ショートカットのウィンドウサイズを「最小化」に指定すると、Safariが最小化で起動しました。 この意味が判然としませんが、 「ショートカット->プロパティで「実行時の大きさ」を「最小化」に指定しておくと」 と解釈しました。 そのショートカットを実行する際にプロパティを参照して「通常のウィンドウ」「最小化」「最大化」を判定しているのでしょう。 同じプログラムについて複数のショートカットを作成して「実行時の大きさ」を異なる指定にしておけば、それぞれ異なる大きさの表示になりますので、このプロパティを参照していることが解ります。 なお、No.2の nShowの値は複数の組合せが可能です。

  • LOHA
  • ベストアンサー率52% (203/388)
回答No.1

>これは、内部的には最小化で起動するように指定ができているのだと思うのですが、ショートカットのプロパティで「最小化」を指定した場合、どのような処理が行われているのでしょうか? VBとかを使っていると全く見えないのですが、CなどでWindowsアプリケーションを作成する際にエントリポイントのWinMain関数の第4引数に、一般的に int nCmdShow なるモノが有ります。 WinMain:http://msdn.microsoft.com/ja-jp/library/cc364870.aspx 例えば、 >ショートカットのプロパティで「最小化」を指定した場合 はnCmdShowがSW_SHOWMINIMIZED(かな?SW_MINIMIZEかも)になり、 これがShowWindowで指定されると最小化状態で起動されるという仕組みです。 ShowWindow:http://msdn.microsoft.com/ja-jp/library/cc411211.aspx 詳しくはWindowsSDKを勉強してください。 http://homepage2.nifty.com/c_lang/index_sdk.html >あと、こういう場合にOSはどのような処理を行っているか、確認できるようなツールはないでしょうか?(キーロガーのような) SPY++とか使うとそれっぽいことが出来るかもしれません(すみません、適当です)。 >ショートカットを起動したときに、どのようなコマンドが実行されているか確認できるようなソフトはないでしょうか? Ollydbgのようなデバッガで機械語で追って行くいくしかないかと思います。 以上参考までに。

S202
質問者

お礼

アドバイスありがとうございました。 結局、AutoSizerというアプリ側でSafariのウィンドウの制御をすることにしました。

関連するQ&A

  • Visual basic6.0からショートカット(.lnk)を起動したい。

    Visual basic6.0からショートカット(.lnk)を起動したいと思っています。 "TEST.EXE"から"TEST.txtへのショートカット"のlnkファイルを作って、 VBからはこのショートカット側を指定して、TEST.EXEを起動させたいのですが、 出来ないことなのでしょうか? 宜しくお願い致します。

  • vbで起動時オプションを指定するコードは?

    よろしくお願いします。 VB6.0(SP5)で作成するプログラムに起動時のオプション指定をするコードを追加したいのですが、やり方が分からず困っています。 xxxxxx.exe /u などの起動時オプションを追加するコードを教えてください。 よろしくお願いします!

  • バッチ起動でウィンドウアプリを最前面で表示したい

    まず、バッチにてウィンドウアプリを起動する処理を記述し保存します。  例.aaa.bat    C:\Windows\System32\notepad.exe このバッチのショートカットを作成し、ショートカットのプロパティで 「実行時の大きさ」に「最小化」を指定します。 作成したショートカットをダブルクリックしてaaa.batを起動したときには、 DOSプロンプト自体は最小化の状態で起動されますが、 notepad自体は他のウィンドウ(IEでもエクスプローラーでも その他のウィンドウでも何でもよい)がすでにデスクトップ上に 表示されていると、notepadは全てのウィンドウの最背面に 表示されてしまいます。 notepadを最前面で表示したいのですが、最前面に 表示(アクティブ)するためにはどのような対応を 行えばよいのでしょうか? 使用環境はWindows10 Proです。 よろしくご教授お願いいたします。

  • WindowsでのPostgreSQL起動オプション指定方法について

    WindowsにPostgresSQLをインストールしているのですが、サービス起動オプションの指定の仕方がわかりません。 -iオプションを付けて起動すれば、TCP/IP接続できるようになると知って、やってみようとしていて、試してみている次第です。 サービス起動のショートカットに、以下のようなショートカットがあるのですが、 C:\WINDOWS\system32\net.exe start pgsql-8.3 これに単純に後ろに-iを付けてみても駄目なようです。 どなたか方法をご教示ください。 環境は以下の通りです。 WindowsXP HomeEdition Version2002 PostgreSQL 8.3

  • エクスプローラ起動時のアドレス指定

    ショートカットを使ってIEを起動する時のアドレスを指定することはできませんか?デスクトップにIEのショートカットを幾つか置いて、それぞれに異なるアドレスを設定したいのです。 (IE起動後、お気に入りをクリックするのも面倒なものぐさ人間なもので...) 目的のアドレスが一つだけなら、ホームページのアドレスとして指定すればいいのですが。 IEの起動オプションとかで指定することはできないでしょうか? 御存知の方いらっしゃいましたら、お知恵を貸して下さい。よろしくお願いします。

  • VisualBasic2005 外部アプリを最小化で起動する

    VisualBasic2005にてプログラムをしているのですが、 指定されたアクションをトリガにして、外部アプリを最小化で起動したいのですが、最小化されずに起動してしまいます。 外部アプリは、WEBブラウザ(safari)です。 以下に、処理部分を記載します。 Dim p As System.Diagnostics.Process = New System.Diagnostics.Process p.StartInfo.FileName = 'safariのパス' p.StartInfo.Arguments = '指定したURL' p.StartInfo.UseShellExecute = False p.StartInfo.RedirectStandardOutput = True p.StartInfo.WindowStyle = ProcessWindowStyle.Minimized p.StartInfo.CreateNoWindow = True p.Start() 上記で実行すると、指定したURLでSafariが起動するのですが、 最小化で起動しません。 通常のウィンドウサイズで起動します。 どなたか、アドバイスをお願いします。

  • ショートカットからタスクマネージャを起動したい

    Windows2000で、ショートカットからタスクマネージャを起動したいのですが、どのように記述したらよいのでしょうか? 普通にtaskman.exeを指定してもダメでした。 よろしくお願いします。

  • ネットスケープのショートカットで特定ページを指定

    IEではショートカットのプロパティで、exeのパスの後ろに "http://www.okweb.ne.jp/oshiete_new.php3" のように記述するとそのページを開いてくれるので、 ネスケでも同じように指定したいのですが、 どのように記述していいのかわかりません。 可否も含めてご存知の方、御教授よろしくお願いします。

  • IEのショートカットとかで、インターネットオプションで指定する

    IEのショートカットとかで、インターネットオプションで指定する ホームページ以外のページを、一発で起動する方法はありますか? または、新しいタブを開くとき、ホームページ以外の指定したページで開くことは可能ですか?

  • 「ショートカットを起動するためにウィンドウを再使用する」が機能しない

    1.IEで「ショートカットを起動するためにウィンドウを再使用する」をオフにしています。 2.HDに保存してあるインターネットショートカットに関しては、ダブルクリックをする都度、新しいIEが起動されます。(想定通り) 3.Outlook Expressで、メール中に記載してあるURLに関しては、クリックすると新しいIEが起動せず、「ショートカットを起動するために~」のオプションが有効の場合と同じ動作をするようです。 3の事象を何とかしたいのですが、原因を思い当たる方はいらっしゃいますか? 以前は、こんなことはなかったと思うのですが、今日気づいたらそうなっていました。 今日あった出来事と言えば、Windowsのブート中に、誤って電源コードを引き抜いてしまったことなのですが、その拍子にシステムが壊れてしまうようなことが考えられますでしょうか??