Jump to content

rainer560

Members
  • Posts

    2
  • Joined

  • Last visited

rainer560's Achievements

Seeker

Seeker (1/7)

1

Reputation

  1. Problem with Windows 10: The scripts do not work with Windows 10 - _CommAPI_OpenCOMPort fails. I found however that a Sleep(100) after _CommAPI_BuildCommDCB in the function _CommAPI_OpenPort in script CommInterface.au3 fixes the problem! Rainer Func _CommAPI_OpenPort(Const $sMode) Local $sFileName = "\\.\" & StringLeft($sMode, StringInStr($sMode, ":") - 1) ; Local $sFileName = ".\" & StringLeft($sMode, StringInStr($sMode, ":") - 1) ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $sFileName = ' & $sFileName & @crlf & '>Error code: ' & @error & @crlf) ;### Debug Console Local $hFile = _WinAPI_CreateFile($sFileName, 3, 6) ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $hFile = ' & $hFile & @crlf & '>Error code: ' & @error & @crlf) ;### Debug Console If @error Then Return SetError(@error, @ScriptLineNumber, 0) If $hFile <= 0 Then Return SetError(-1, @ScriptLineNumber, 0) Local $tDCB = DllStructCreate($tagDCB) Local $tCommTimeouts = DllStructCreate($tagCOMMTIMEOUTS) _CommAPI_BuildCommDCB($sMode, $tDCB) Sleep(100); If @error Then Return SetError(@error, @extended, 0) _CommAPI_SetCommTimeoutsElement($tCommTimeouts, "ReadTotalTimeoutMultiplier", 1) If @error Then Return SetError(@error, @extended, 0) _CommAPI_SetCommTimeoutsElement($tCommTimeouts, "WriteTotalTimeoutMultiplier", 1) If @error Then Return SetError(@error, @extended, 0) If Not _CommAPI_SetCommState($hFile, $tDCB) Then Return SetError(@error, @extended, 0) If Not _CommAPI_SetCommTimeouts($hFile, $tCommTimeouts) Then Return SetError(@error, @extended, 0) Return $hFile EndFunc ;==>_CommAPI_OpenPort
  2. Hi Martin, I am using this UDF for years and have written several complex scripts to control various hardware. Now, with Windows 10 my scripts are not working anymore! The available comports are listed as usual but when I try to open the port it says "port does not exist". With Hyperterminal I am able to communicate to this port without problems, so it really seems to be a problem of the UDF or more liekely the dll. can you help?
×
×
  • Create New...