「FindWindow」、ウィンドウハンドルについて
知恵を貸してください。
VB6.0にて作業しています。
コモンダイアログからExcelファイルを指定して開く際、
現在起動中のものを二重起動しないために「FindWindow」
を用いました。
最初は正常に動作したのですが、何度か操作しているうちに、
Excelを起動していない(ctrl+Alt+Delで確認し、何度も再起動しました)のに
起動中の処理(ハンドルを表示)をするようになってしまいました。
(1)ソースの正否
(2)ウィンドウハンドルからウィンドウを特定する方法
ハンドル(3409196)が表示されるため、この番号から
指定されたウィンドウを特定できれば
原因特定にいたるのではないかと考えました。
についてアドバイスいただけないでしょうか?
以下にコードを記述します。
*モジュール側の記述は省略しました。
Private Sub Command1_Click()
Dim hwindow As Long
Dim Fname As String
Dim XLSApp As Object
(前述分省略)
cdl.ShowOpen
Fname = cdl.FileName
hwindow = FindWindow("XLMAIN", vbNullString)
If hwindow = 0 Then
Set XLSApp = GetObject(Fname)
(以下指定ファイルを開く処理)
Else
MsgBox hwindow
End If
End Sub
以上です、よろしくお願いします。