A process of mine opens a HML file, modifies it and then saves, closes it.
I then need to run an.exe that opens this file right after this.. However, nothing that I find on this forum works that supposedly tests to see if the fie is still open, ready to be used by another process.
Right now, I just Sleep(2000) .
I would like something cleaner than this.
This function, for example, returns False when nothing has it opened or if I open the file with notepad or any other editor.
I am running on a win7 laptop, if that has any bearing.
$File="C:\Utilities\test\report.hr5"
MsgBox(0,"", _FileInUse($File))
Exit
Func _FileInUse($sFilePath) ; By Nessie. Modified by guinness.
Local Const $hFileOpen = _WinAPI_CreateFile($sFilePath, $CREATE_ALWAYS, $FILE_SHARE_WRITE)
If $hFileOpen Then
_WinAPI_CloseHandle($hFileOpen)
Return False
EndIf
Local $fReturn = False
If _WinAPI_GetLastError() = 32 Then $fReturn = True
Return $fReturn
EndFunc