2017-11-09 20 views
0

私はvb.netを使用していくつかのタイプのファイルを開いて特定のファイルを最小限にして最大化できるアプリケーションを作成しようとしていますファイルを作成します。 問題は、いくつかのファイルが同じプロセス名(たとえばExcel、メモ帳、単語、autocad)のウィンドウとして開くということです。 プロセスIDを使用してウィンドウを制御しようとしましたが、プロセスIDは同じプロセスに属するすべてのファイルについて同じままです。特定のExcelファイルをvb.netでその名前を使用して最大化または最小化

これは、私は、ウィンドウを最小化するために使用する機能ですが、それは唯一のプロセスのメインウィンドウを制御していない特定の1

Public Sub Minimize(Id As Integer) 
    Dim localById As Process = Process.GetProcessById(Id) 
    Try 

     ShowWindow(localById.MainWindowHandle, 2) ' 

    Catch ex As Exception 
    End Try 
End Sub 

しかし、私は本当に続行する方法がわかりません。私の目標は、名前を使ってプロセスの特定の開いたウィンドウを最小化または最大化できることです。 例えば「Config.docx」という名前のワードファイルを開き、「Specifications.docx」という名前の別のファイルをタスクマネージャに「Microsoft Word(2)」と表示し、何をしようとしているかプロセスのメインウィンドウだけでなく、その名前を使って各ウィンドウを制御することです。

誰でも助けてくれますか?インデックスを使用して、アクティブとしてブックを設定し

答えて

0

- あなたが操作するワークブック(最小化、最大化)

Private Sub btnOpenFile_Click(sender As Object, e As EventArgs) Handles btnOpenFile.Click 
    Dim myExcel As Excel.Application 
    Dim aWorkbook As Excel.Workbook 
    Dim abook1 As Excel.Workbook 
    Dim abook2 As Excel.Workbook 
    Dim abook3 As Excel.Workbook 

    myExcel = New Excel.Application 
    'index = 1 
    aWorkbook = myExcel.Workbooks.Open("D:\Dev\Debug\Reports\2017-11-07T08_54_42_Report.xls") 
    'index = 2 
    abook1 = myExcel.Workbooks.Open("D:\Dev\Debug\Reports\2017-11-07T12_38_40_Report.xls") 
    'index = 3 
    abook2 = myExcel.Workbooks.Open("D:\Dev\Debug\Reports\2017-11-09T09_23_40_Report.xls") 
    'index = 4 
    abook3 = myExcel.Workbooks.Open("D:\Dev\Debug\Reports\2017-11-09T09_35_00_Report.xls") 
    myExcel.Visible = True 
    myExcel.WindowState = Excel.XlWindowState.xlMinimized 
    myExcel.Workbooks(3).Activate() 
    Dim T As Excel.Application 
    T = myExcel.ActiveWorkbook.Parent 
    T.WindowState = Excel.XlWindowState.xlMaximized 

    'Don't forget to cleanup excel stuff aka close it and release stuff :) 
End Sub 
+0

こんにちは、お返事ありがとうございましたが、私は私の問題の間違った説明を与えたと思います。今私の質問を編集しました。 – Samantha

関連する問題