Python论坛  - 讨论区

标题:关于调用一个DLL的问题

2011年10月21日 星期五 22:34

大家好。有个问题请教一下。
现在我想调用一个WASPCN.DLL,用函数查看器看到里面有TH2P97这个函数接口,做以下程序:
from numpy import linspace
import ctypes
wasp = ctypes.CDLL('E:\\WASPCN.dll')

def TH2P97(T,H):
    TH2P = wasp.TH2P97
    TH2P.argtypes = [ctypes.c_float,ctypes.c_float]
    TH2P.restype = ctypes.c_float
    return wasp.TH2P97(T,H)
def P_HT(H,P):
    P_HT97 = wasp.P_HT97
    P_HT97.argtypes = [c_double,c_double]
    P_HT97.restype = c_double
    return wasp.P_HT97(P)
x = linspace(100,200,1000)
print TH2P97(100,900)
y = TH_P(x,900)
结果返回错误:
WindowsError: exception: access violation writing 0x1D1A9E90
求正解!~

2011年12月13日 星期二 00:09

看看时候是DLL的调用方式的问题

stdcall方式加载代码:

Objdll = ctypes.WinDLL("E:\\WASPCN.dll"

cdecl方式加载代码:

Objdll = ctypes.CDLL("E:\\WASPCN.dll")

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号