资料库: 无需 DLL 的文件映射 - 页 6 123456789101112 新评论 Mykola Demko 2013.08.27 20:12 #51 TheXpert: 标准就是标准,所以没什么好说的,没办法。有错误 -- 向开发人员报告。别无他法。在标准圣经中,调用的是GetLastError。但应该是这样的 ::GetLastError。否则, kernel32::GetLastError 就是一个错误。如何不纠正它? --- 2013.08.27 20:16 #52 Urain:怎么能不纠正呢?我暗示过,也展示过,还写过。#importintGetLastError(int )---就是这样,上下文是自由的。如果你不想这样做,RtlGetLastError 也很类似。 Mykola Demko 2013.08.27 20:20 #53 sergeev:我暗示过,我展示过,我写过。#importint GetLastError(int )---就是这样,上下文是自由的。如果你不想这样做,RtlGetLastError 也很类似。 是的,我从一开始就明白了提示的意思,只有 MQ 开发人员才会关注我们,否则他们就不会为任何人编写代码,然后人们就会遭殃。 TheXpert 2013.08.27 20:57 #54 sergeev:您不想这样做吗 - RtlGetLastError - 类似 RtlGetLastWin32Error?不相似,您必须自己手动重置错误 akskarabey 2014.09.03 23:40 #55 在我的代码中应用您的类时,我遇到了以下问题:如果共享内存的大小大于 4096 字节,CMemMapApi::Write/Read(memmaplib.mqh 中的第 219 和 231 行)中的memcpyX 就会显示 "访问违规"。能否告诉我 "从哪里挖掘 "来 "使 "memcpy 读取大于 4kb 的内存块? [删除] 2015.01.04 19:33 #56 非常感谢作者所做的工作。如果作者不介意,我将在我的 SCL 类库中加入这两个类。不过,这两个类在定义标准微软类型方面存在错误,导致算法中出现其他错误。例如,DWORD 类型不是 int,而是 uint。因此,我不得不修改类中的一些算法,但这并不难。 --- 2015.01.05 07:59 #57 _Konstantin_:例如,DWORD 类型不是 int,而是 uint。 这就足以调用 [删除] 2015.01.05 10:21 #58 sergeev: 这对调用来说就足够了。 如果按照微软的说法,在以 DWORD < 0 为条件的方法中,会出现警告,因为 DWORD 不能小于 0。总的来说,我喜欢这两个类:) Al_key 2016.02.19 08:18 #59 我不太明白线程安全是如何实现的?假设:几个进程同时写入和读取。从逻辑上讲,应该有类似 Lockfile 的东西,但我在 lib 中没有找到。还是在 winapi 层已经实现了? --- 2016.02.19 08:30 #60 Al_key: 我不太明白线程安全是如何实现的?假设:几个进程同时写入和读取。从逻辑上讲,应该有类似 Lockfile 的东西,但我在 lib 中没有找到。还是在 winapi 层已经实现了?lib 中没有章节绑定,因为理论上代码可以在不同进程中执行。要控制它,可以使用您的变量或https://www.mql5.com/zh/code/1835。 Mutex - на чистом WinAPI 投票: 292013.08.20o_Owww.mql5.com Синхронизируем процессы ОС/EA/MT и т.д. Никаких самописных DLL. Настало время держать все под своим контролем! 123456789101112 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
标准就是标准,所以没什么好说的,没办法。有错误 -- 向开发人员报告。别无他法。
在标准圣经中,调用的是GetLastError。
但应该是这样的 ::GetLastError。
否则, kernel32::GetLastError 就是一个错误。
如何不纠正它?
怎么能不纠正呢?
我暗示过,也展示过,还写过。
#import
intGetLastError(int )
---
就是这样,上下文是自由的。
如果你不想这样做,RtlGetLastError 也很类似。
我暗示过,我展示过,我写过。
#import
int GetLastError(int )
---
就是这样,上下文是自由的。
如果你不想这样做,RtlGetLastError 也很类似。
您不想这样做吗 - RtlGetLastError - 类似
非常感谢作者所做的工作。如果作者不介意,我将在我的 SCL 类库中加入这两个类。
不过,这两个类在定义标准微软类型方面存在错误,导致算法中出现其他错误。例如,DWORD 类型不是 int,而是 uint。因此,我不得不修改类中的一些算法,但这并不难。
_Konstantin_:
例如,DWORD 类型不是 int,而是 uint。
这对调用来说就足够了。
我不太明白线程安全是如何实现的?假设:几个进程同时写入和读取。从逻辑上讲,应该有类似 Lockfile 的东西,但我在 lib 中没有找到。还是在 winapi 层已经实现了?
lib 中没有章节绑定,因为理论上代码可以在不同进程中执行。
要控制它,可以使用您的变量或https://www.mql5.com/zh/code/1835。