小编Nes*_* W.的帖子

如何将整数解释为浮点数

我正在尝试使用 C# 编写的 DLL 与激光器进行通信。我使用 ctypes 模块成功加载了 DLL 函数。我想使用的函数有一个如下所示的声明:

LONG LJV7IF_GetStorageData( LONG lDeviceId, 
                            LJV7IF_GET_STORAGE_REQ* pReq,
                            LJV7IF_STORAGE_INFO* pStorageInfo,
                            LJV7IF_GET_STORAGE_RSP* pRsp, 
                            DWORD* pdwData, 
                            DWORD dwDataSize );
Run Code Online (Sandbox Code Playgroud)

我想通过双字指针 pdwData 访问数据。激光器通过如下结构发送其存储的数据:

Bytes |  Meaning  |   Types
 0-3  |   time    |    dword          
  4   |  judgment |    byte
  5   | meas info |    byte
 ...  |    ...    |    ... 
 8-11 |   data    |    float
Run Code Online (Sandbox Code Playgroud)

这就是我使用该功能的方式:

self.dll = WinDLL( "LJV7_IF.dll" )
self._getStoredData = self.dll.LJV7IF_GetStorageData
self._getStoredData.restype = c_int32
self._getStoredData.argstypes = [ c_int32,
                                  POINTER( GET_STORAGE_REQ ),
                                  POINTER( STORAGE_INFO ), …
Run Code Online (Sandbox Code Playgroud)

dll ctypes python-3.x

5
推荐指数
1
解决办法
3081
查看次数

标签 统计

ctypes ×1

dll ×1

python-3.x ×1