python调用32位dll_我可以使用进程间通信在64位python中调用此32位dll吗?

fromctypesimport*importosdefconCoords(sysOutNum,outdatyear,outzonecode,inX,inY,inZ):corpslib=windll.LoadLibrary("C:\Program Files\CORPSCON6\corpscon_v6.dll")test00=corpslib.corpscon_default_config()SetNadconPath=corpslib.SetNadconPathSetVertconPath=corpslib.SetVertconPathSetGeoidPath=corpslib.SetGeoidPathSetInSystem=corpslib.SetInSystemSetOutSystem=corpslib.SetOutSystemSetInDatum=corpslib.SetInDatumSetOutDatum=corpslib.SetOutDatumSetInZone=corpslib.SetInZoneSetOutZone=corpslib.SetOutZoneSetInUnits=corpslib.SetInUnitsSetOutUnits=corpslib.SetOutUnitsSetInVDatum=corpslib.SetInVDatumSetOutVDatum=corpslib.SetOutVDatumSetInVUnits=corpslib.SetInVUnitsSetOutVUnits=corpslib.SetOutVUnitsSetGeoidCodeBase=corpslib.SetGeoidCodeBaseSetXIn=corpslib.SetXInSetYIn=corpslib.SetYInSetZIn=corpslib.SetZInGetXOut=corpslib.GetXOutGetYOut=corpslib.GetYOutGetZOut=corpslib.GetZOutimportctypesSetNadconPath.argtypes=[ctypes.c_char_p]SetNadconPath.retval=[ctypes.c_int]SetVertconPath.argtypes=[ctypes.c_char_p]SetVertconPath.retval=[ctypes.c_int]SetGeoidPath.argtypes=[ctypes.c_char_p]SetGeoidPath.retval=[ctypes.c_int]SetInSystem.argtypes=[ctypes.c_int]SetInSystem.retval=[ctypes.c_int]SetInDatum.argtypes=[ctypes.c_int]SetInDatum.retval=[ctypes.c_int]SetOutDatum.argtypes=[ctypes.c_int]SetOutDatum.retval=[ctypes.c_int]SetOutSystem.argtypes=[ctypes.c_int]SetOutSystem.retval=[ctypes.c_int]SetInZone.argtypes=[ctypes.c_int]SetInZone.retval=[ctypes.c_int]SetOutZone.argtypes=[ctypes.c_int]SetOutZone.retval=[ctypes.c_int]SetInUnits.argtypes=[ctypes.c_int]SetInUnits.retval=[ctypes.c_int]SetInVDatum.argtypes=[ctypes.c_int]SetInVDatum.retval=[ctypes.c_int]SetOutVDatum.argtypes=[ctypes.c_int]SetOutVDatum.retval=[ctypes.c_int]SetInVUnits.argtypes=[ctypes.c_int]SetInVUnits.retval=[ctypes.c_int]SetOutVUnits.argtypes=[ctypes.c_int]SetOutVUnits.retval=[ctypes.c_int]SetGeoidCodeBase.argtypes=[ctypes.c_int]SetGeoidCodeBase.retval=[ctypes.c_int]SetXIn.argtypes=[ctypes.c_double]SetXIn.retval=[ctypes.c_int]SetYIn.argtypes=[ctypes.c_double]SetYIn.retval=[ctypes.c_int]SetZIn.argtypes=[ctypes.c_double]SetZIn.retval=[ctypes.c_int]GetXOut.retval=[ctypes.c_double]GetYOut.retval=[ctypes.c_double]GetZOut.retval=[ctypes.c_double]test1=SetNadconPath(r"C:\Program Files\CORPSCON6\Nadcon")test2=SetVertconPath(r"C:\Program Files\CORPSCON6\Vertcon")test3=SetGeoidPath(r"C:\Program Files\CORPSCON6\Geoid")####################################### Set Geographic or Stateplane####################################sysInNum=2insys=SetInSystem(sysInNum)outsys=SetOutSystem(sysOutNum)####################################### Set Datum 83 or 27####################################datumInYear=1983indat=SetInDatum(datumInYear)datumOutYear=outdatyear

outdat=SetOutDatum(datumOutYear)####################################### Set Zone ie 4202####################################incode=4202inzone=SetInZone(incode)outcode=outzonecode

outzone=SetOutZone(outcode)####################################### Set Units####################################units=1outunits=SetOutUnits(units)inunits=SetInUnits(units)####################################### Set V Datum####################################invdatum=SetInVDatum(1988)outvdatum=SetOutVDatum(1988)####################################### Set V Units####################################invunits=SetInVUnits(1)outvunits=SetOutVUnits(1)geoidbase=SetGeoidCodeBase(2003)intcorpse=corpslib.corpscon_initialize_convert()#inX = 2790955#inY = 503380#inZ = 2800.00xin=c_double(inX)yin=c_double(inY)zin=c_double(inZ)xout=c_double()yout=c_double()zout=c_double()SetXIn(xin)SetYIn(yin)SetZIn(zin)corpslib.corpscon_convert()corpslib.GetXOut.restype=c_double

corpslib.GetYOut.restype=c_double

corpslib.GetZOut.restype=c_double

pntX=corpslib.GetXOut()pntY=corpslib.GetYOut()pntZ=corpslib.GetZOut()returnpntX,pntY,pntZ

x,y,z=conCoords(2,1983,4202,2790955,503380,2800.00)print(x,y,z)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值