如何从 MQL4 (.mq4) 中的当前 Class 获取文件名?
How to get a file name from a current Class in MQL4 (.mq4)?
为了防止出现一些样板代码,我想读取 class 正在执行的文件的文件名。
没有可用的默认 MQL4
函数,但应该可以使用本机 windows 函数( GetModuleFileName()
来自 kernel32.dll
)
来源 - https://msdn.microsoft.com/nl-nl/library/windows/desktop/ms683197(v=vs.85).aspx
我确实阅读了 #import
Kernel32.dll
,并从那里窃取了一些功能,但它似乎不起作用。
#import "kernel32.dll"
int GetModuleFileName();
#import
它给我以下错误 ->
2015.01.05 00:15 Cannot find 'GetModuleFileName' in 'kernel32.dll'
它自己解释了,getModuleFileName
不在 kernel32.dll
中
有谁知道如何获取当前文件名?
我找到了解决方法..
具有以下功能
typename(this);
给出了 ClassName.. 这足以让我使用..
输出真实'file-name'的函数还是很受欢迎的
当前文件名是 read-able 通过 __FILE__
宏。
New-MQL4
内置支持显示当前文件名。
通过对 __FILE__
、__LINE__
、__PATH__
等的支持,人们可以实现任何 in-vivo / post-mortem 代码报告工具套件满足自己的需求.
MetaEditor 文档显示了其他附加宏 __FUNCSIG__
、__MQL4BUILD__
等等。
为了防止出现一些样板代码,我想读取 class 正在执行的文件的文件名。
没有可用的默认 MQL4
函数,但应该可以使用本机 windows 函数( GetModuleFileName()
来自 kernel32.dll
)
来源 - https://msdn.microsoft.com/nl-nl/library/windows/desktop/ms683197(v=vs.85).aspx
我确实阅读了 #import
Kernel32.dll
,并从那里窃取了一些功能,但它似乎不起作用。
#import "kernel32.dll"
int GetModuleFileName();
#import
它给我以下错误 ->
2015.01.05 00:15 Cannot find 'GetModuleFileName' in 'kernel32.dll'
它自己解释了,getModuleFileName
不在 kernel32.dll
有谁知道如何获取当前文件名?
我找到了解决方法..
具有以下功能
typename(this);
给出了 ClassName.. 这足以让我使用..
输出真实'file-name'的函数还是很受欢迎的
当前文件名是 read-able 通过 __FILE__
宏。
New-MQL4
内置支持显示当前文件名。
通过对 __FILE__
、__LINE__
、__PATH__
等的支持,人们可以实现任何 in-vivo / post-mortem 代码报告工具套件满足自己的需求.
MetaEditor 文档显示了其他附加宏 __FUNCSIG__
、__MQL4BUILD__
等等。