金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
12
返回列表 发新帖
楼主: rendezvoush

C++ DLL全局变量测试

[复制链接]

1

主题

843

帖子

853

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2023-10-23 11:29 | 显示全部楼层
我们自带的范例大量用户正在使用,是肯定没有问题的。建议你编译完后看一下是否是缺少相应的C++运行库支持导致的无法调用。
很抱歉我们由于C++技术支持人员有限,无法为非VIP客户提供完整级代码的修改服务。
回复

使用道具 举报

3

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2022-4-7
曾用名:
 楼主| 发表于 2023-10-23 11:57 | 显示全部楼层
用系统自带64位范例, 出现同样现象, DLL debug显示同样的pData->m_pfParam1为空, 从而引起MYMACLOSE执行退出, 因此没有输出结果。
截图202310231154315460.png
回复

使用道具 举报

3

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2022-4-7
曾用名:
 楼主| 发表于 2023-10-23 12:07 | 显示全部楼层
首先感谢您的答复与热心技术支持。 附件为64位系统自带的FmlDevelope源代码+构建Project,在VS2019下构建了Project. 其他未变. 生成的DLL加载后, 通过DLL debug显示可以被调用, 但现象与前述一致,即DLL debug显示同样的pData->m_pfParam1为空, 从而引起MYMACLOSE执行退出, 因此没有输出结果。

麻烦您再次动手验证, 不胜感谢!

TestFML.rar

9.13 KB, 下载次数: 460

回复

使用道具 举报

3

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2022-4-7
曾用名:
 楼主| 发表于 2023-10-24 08:43 | 显示全部楼层
反复琢磨大拿“用系统自带的DLL范例先跑一下看看”提醒后,构建自带DLL范例的编译环境:

1、VC++6.0  :英文版下载链接 https://dl-alt1.winworldpc.com/Microsoft Visual Studio 6.0 Enterprise.7z
2、安装SDK:  Windows® Server 2003 SP1 Platform SDK ISO 下载与安装 https://www.microsoft.com/en-us/download/details.aspx?id=15656
3、参照说明:https://www.ultimate-communications.com/zh/program_349821
4、注意两个事项:VC++6.0安装时选择custom,
在Data Access选项上,Select Data Access and press the Change Option... button, Disable ADO, RDS and OLE DB Providers

补充内容 (2023-10-24 08:44):
select the Enterprise Tools option and press the Change Option... button, Disable Visual Studio Analyzer

补充内容 (2023-10-24 08:45):
select the Enterprise Tools option and press the Change Option... button  Disable Visual Studio Analyzer
回复

使用道具 举报

3

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2022-4-7
曾用名:
 楼主| 发表于 2023-10-24 08:46 | 显示全部楼层
Install Visual Studio 6.0 on Windows 10

https://www.codeproject.com/Articles/1191047/Install-Visual-Studio-on-Windows
回复

使用道具 举报

3

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2022-4-7
曾用名:
 楼主| 发表于 2023-10-24 08:47 | 显示全部楼层
现在可以在64位软件中, 加载运行64位的DLL了
回复

使用道具 举报

3

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2022-4-7
曾用名:
 楼主| 发表于 2023-10-24 08:54 | 显示全部楼层
感想:

真没有必要:让您的客户浪费精力在这低层次编译环境搭建上, 将可以成功编译64位DLL的环境明确说出来,应该可以加深客户【哪怕是潜在】对贵司的好感

还是要感谢技术大拿的暗示提醒, 谢谢您@技术015
回复

使用道具 举报

0

主题

5

帖子

5

积分

Rank: 1

等级: 新手上路

注册:
2023-11-14
曾用名:
发表于 2023-11-22 19:30 | 显示全部楼层
rendezvoush 发表于 2023-10-24 08:47
现在可以在64位软件中, 加载运行64位的DLL了

根据你提供的资料,用示例代码成功编译为64位DLL后,在金字塔软件里调用后仍然没有任
何数据,请问你是怎样成功的?可以给出下编译工具链和相关的Windows SDK信息吗?


VC6.0的Lib信息

VC6.0的Lib信息

生成的64位DLL

生成的64位DLL

金字塔软件里调用的结果

金字塔软件里调用的结果
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2024-11-16 11:46 , Processed in 0.311145 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表