First of all thanks for the hints.
Just to make sure, for my test I use a connection via "WideFS Client", for the code I use the SDK from here: http://www.schiratti.com/dowson.html
The info is just to avoid that I use some wrong version or code base
Here is where it fails in read, I have just placed a single line for test purposes in my read function. I open in my object's connect function, then I call my read function:
FSUIPC_Read(0x0238, 3, localFsTimeRaw, &dwResult); ==> calls
if (!m_pView)
{ *pdwResult = FSUIPC_ERR_NOTOPEN; <-- returns this value
return FALSE;
}
Now I did a second test and try to open just before, then failing with FSUIPC_ERR_MAP, so this means m_pView is 0, but the connection still exists. No idea how I can get into that status.
FSUIPC_Open(SIM_ANY, &dwResult); <== fails with ERR_MAP
FSUIPC_Read(0x0238, 3, localFsTimeRaw, &dwResult);
if ((m_hMap == 0) || (GetLastError() == ERROR_ALREADY_EXISTS))
{ *pdwResult = FSUIPC_ERR_MAP;
FSUIPC_Close();
3rd version, I just close before I reopen and read. Everything works, even with my
FSUIPC_Close();
FSUIPC_Open(SIM_ANY, &dwResult);
FSUIPC_Read(0x0238, 3, localFsTimeRaw, &dwResult);
Now my naive conclusion, my connection seems to get broken somewhere. If it was closed somewhere, example 2 would work. So somehow m_piew is 0, but still something is open. I am using an "all compiled" version, no libs. Compiling with VS2017, in this very case 32bit.
Maybe there is any hint, but however expect this is some odd detail.