loco_001
loco_001
采纳率50%
2015-05-26 15:08

【江湖救急】定义外部函数名被关键字占用如何处理?

在下用PB调用一个动态库,里面有一个方法名叫execute(),
但是定义时跟PB的execute关键字冲突,无法定义和使用,
跪求各位大神该如何处理?

多个函数,其中open、close虽PB内部也有,但是可以定义成功并使用,
FUNCTION integer open(string devtype,string serialport,int baudrate,ref string pszRcCode) LIBRARY "Driver.dll"

FUNCTION integer close(string devtype,string serialport,int baudrate,ref string pszRcCode) LIBRARY "Driver.dll"

但是这个execute就不行了,
FUNCTION integer execute(string devtype,string serialport,int baudrate,ref string pszRcCode) LIBRARY "Driver.dll"

该如何解决?其他途径绕过亦可。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

3条回答

  • gamefinity 知常曰明 6年前

    使用别名

     FUNCTION integer executeABC(string devtype,string serialport,int baudrate,ref string pszRcCode) LIBRARY "Driver.dll" Alias for "execute"
    
    点赞 评论 复制链接分享
  • 91program 91program 6年前

    你使用的动态库是在 PB 下编译、并生成的吗?
    如果是,为什么这个动态库编译还能通过?因为动态库中使用了 execute 与系统的函数重名了。
    如果不是,能在 PB 下安全使用嘛。

    点赞 评论 复制链接分享
  • gamefinity 知常曰明 6年前

    使用别名

     FUNCTION integer executeABC(string devtype,string serialport,int baudrate,ref string pszRcCode) LIBRARY "Driver.dll" Alias for "execute"
    
    点赞 评论 复制链接分享