Python如何调用易语言DLL

对Python能够调用天下语言一直有所耳闻,今天试试能不能调用易语言,虽说不能调用.e文件,但至少易语言生成的dll文件应该问题不大。接下来就开始调用。

 

被调用的易语言dll:

.版本 2

.子程序 get_disk_info, 文本型, 公开
.参数 disk_name, 文本型
.局部变量 used_space, 长整数型
.局部变量 use_space, 长整数型
.局部变量 total_space, 长整数型
.局部变量 return_str, 文本型

系统_取磁盘大小信息 (disk_name, used_space, use_space, total_space)
' 输出调试文本 (used_space ÷ 1024, use_space ÷ 1024, total_space ÷ 1024)
return_str = 到文本 (四舍五入 (use_space ÷ 1024, 1))

返回 (return_str)

Python所用到的库:

os;sys;ctypes;

import sys,os
from ctypes import *

def get_disk_info(disk):
    # 添加dll的搜索路径为当前目录
    os.add_dll_directory(sys.path[0])
    # 创建dll对象
    dll = CDLL('disk.dll')
    # 易语言传参是文本型,这里需要编码为utf-8
    disk = c_char_p(disk.encode('utf-8'))
    # 返回值是文本型
    info = string_at(dll.get_disk_info(disk))

    return info #96.8

 

如果不添加dll搜索路径就会报错:

FileNotFoundError: Could not find module 'disk.dll'. Try using the full path with constructor syntax.

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值