こんにちは、お世話になっております。
下記のようなコードでアプリケーションを起動して
ウィンドウを最大化したいのですが、
どのようにしたら良いでしょうか。
3行目のように大きさを画面いっぱいに設定する方法は
出来たのですが、最大化の方法がわかりません。
申し訳ありませんが、教えて頂きたくお願いいたします。
Dim p As System.Diagnostics.Process
p = System.Diagnostics.Process.Start("***")
MoveWindow(p.MainWindowHandle, 0, 0, 1024, 768, 1)
No.2ベストアンサー
- 回答日時:
>起動後のアプリが最大化されませんでした。
起動して、そのウインドウを最大化するサンプル
----------------------------------------------------------------
Imports System
Imports System.Text
Imports System.Diagnostics
Imports System.Threading
Imports System.Runtime.InteropServices
Imports Microsoft.VisualBasic
'vbc Example.vb /r:System.dll
Namespace Example
Class ExampleClass
'Win32API
<DllImport("USER32.DLL")> _
Public Shared Function ShowWindow( _
ByVal handle As IntPtr, _
ByVal style As Integer ) As Integer
End Function
Shared Sub Main()
const SW_MAXMIZE as Integer = 3
Dim instance As Process
instance=Process.Start("notepad.exe") 'アプリケーションを起動する
Dim hWnd As IntPtr
hWnd = instance.MainWindowHandle 'ウィンドウハンドルを得る
Thread.Sleep(5000) '起動の完了を5秒待つ
ShowWindow(hWnd, SW_MAXMIZE) '最大化する
End Sub
End Class
End Namespace
再びの回答ありがとうございます。
しかもとても詳しくご丁寧に書いて頂いて感激です。
しかしやはりメモ帳だと正常にできるのですが、
目的のソフトだと変化がありませんでした(;;)
AAAA.exeを起動するとタスクバーにスタートアップと
本体の2つが出るので、そのあたりに原因がありそうです。
AAAA.exeは確かにプログラム本体なのですが、またいろいろと試行錯誤してみたいと思います。
いつもお返事くださってありがとうございます。
No.1
- 回答日時:
ProcessStartInfo クラスのオブジェクトを使って設定後Process.Start します
----------------------------------------------------------------
Imports System
Imports System.Text
Imports System.Diagnostics
Imports Microsoft.VisualBasic
'vbc Example.vb /r:System.dll
Namespace Example
Class ExampleClass
Shared Sub Main()
Dim startInfo As New ProcessStartInfo("notepad.exe")
startInfo.WindowStyle = ProcessWindowStyle.Maximized
Process.Start(startInfo)
End Sub
End Class
End Namespace
この回答への補足
いつもお返事ありがとうございます。m(__)m
今回頂いたご回答も私の書いたとおりのことが
できたのですが、申し訳ないのですが、
私の書き方が足りずに、当方の使用状況では
うまく行きませんでした。
起動後に最大で表示したいアプリなのですが、
起動前にスプラッシュウィンドウが出るタイプの為、
起動命令に最大化を指示した場合はその
スプラッシュウィンドウがその命令を受け取って
しまうようで、起動後のアプリが最大化されませんでした。
(何かの情報を受け付けてはいるのか左上の座標は0,0に表示されるようです。
また、起動完了後に一度デスクトップを表示してからタスクバーをクリックしてアクティブにするとなぜか最大化しています。)
申し訳ございませんが、何か解決方法がありましたら、
ご教示いただけると助かります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) VBAで質問ですが、皆さんはどの様に導き出しているのでしょうか? 6 2022/05/03 21:53
- Excel(エクセル) 列の最終行に新たに入力されたらその値を自動参照 1 2023/01/21 09:59
- PowerPoint(パワーポイント) ExcelのVBAコードについて教えてください。 3 2022/05/25 14:32
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- Visual Basic(VBA) Vba LongPtrについて教えてください 2 2022/08/19 11:14
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/07/13 12:31
- Visual Basic(VBA) Excel VBA マクロ ある列の最終行迄を参照し、別の列の空白セルに値を入力したいです 2 2023/03/05 02:44
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
起動したアプリケーションを最大化したいのですが。(VB.NET)
Visual Basic(VBA)
-
VB.NETでマウスクリックイベントを発生させたい。
Visual Basic(VBA)
-
ウィンドウを最前面にできません
Visual Basic(VBA)
-
-
4
VB.NETで DataRow()を利用して、値からコードを取得したい。
Visual Basic(VBA)
-
5
文字数に合わせて、コントロールの幅を設定する方法
Visual Basic(VBA)
-
6
フルパスから最後のディレクトリ名を取得したい。
Visual Basic(VBA)
-
7
DataGridViewのチェックボックスのON、OFFの判定方法
C言語・C++・C#
-
8
VBで外部プログラムを位置のみ指定して実行したい
Visual Basic(VBA)
-
9
MoveWindowで位置だけ変更するには?
Visual Basic(VBA)
-
10
VB.netでFindWindowExやると・・・9222812402616107008!?
Visual Basic(VBA)
-
11
他のアプリケーションとの連携
Visual Basic(VBA)
-
12
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
13
C#で自分のウインド・ハンドルを取得するにはどうすればよいのでしょうか
C言語・C++・C#
-
14
Hideについて(.NET)
Visual Basic(VBA)
-
15
【VB】タブ切り替え時のイベント
Visual Basic(VBA)
-
16
他のウィンドウのボタンを自動的に押したい
C言語・C++・C#
-
17
VB.net 任意の例外を発生させるには・・・
Visual Basic(VBA)
-
18
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
19
VB.NETでのDOSコマンドを実行について
Visual Basic(VBA)
-
20
VB.NETで他のEXEを実行させる
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アウトルックが起動しているか...
-
Windows上のプログラム。「予め...
-
VBSから別のVBS起動するとき変...
-
ASPでPMT関数が使いたい...
-
VBで実行中のEXEファイルの情報...
-
WinSCPで画像のように puttyを...
-
リムーバブルディスクのフォー...
-
MSDOS(バッチファイル)でプロセ...
-
ウィンドウを終了させたい・・・
-
別アプリの起動、終了について
-
VB6で呼び出し元の情報を取得す...
-
VBで別のプログラムを起動し他...
-
エクセル起動時別プロセスで開く
-
VBSで起動したアプリが前面表示...
-
VBAでSeleniumからChromeを起動...
-
「FindWindow」、ウィンドウハ...
-
HTMLタグの中にDLLを埋め込む事...
-
mscomm32.ocxの登録方法
-
フォームの最前面が効かない
-
ACCESS VBAで別のACCESS(mdb)を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アウトルックが起動しているか...
-
VBAでOutlookを終了させたい Ex...
-
VBSから別のVBS起動するとき変...
-
Windows上のプログラム。「予め...
-
VBSで起動したアプリが前面表示...
-
VBで実行中のEXEファイルの情報...
-
キー操作 (WSH:コピー&ペー...
-
EXCEL VBAから他アプリケーショ...
-
Process.Startで起動したアプリ...
-
VBAでSeleniumからChromeを起動...
-
64bitで作ったEXEを32bitで起動...
-
ACCESS VBAで別のACCESS(mdb)を...
-
「FindWindow」、ウィンドウハ...
-
VBAでIEが起動しているか...
-
Shellで起動したプログラムのウ...
-
VBSでExcelのUserFormをエクス...
-
Vba アプリケーションが立ち上...
-
exeファイルを実行するとすぐに...
-
フォームの最前面が効かない
-
別アプリの起動、終了について
おすすめ情報