【插件】黑月编译器v4.1.7.7
[被封七号升级记录]
4.1.7.7版本
本次更新特别鸣谢以下技术指导:
黑月原作者: 云外归鸟
黑月前升级负责人: 泪闯天涯(邓学彬)
IT界的大神: 些似
新版黑月的配置项目录为%ProgramData%\BlackMoon
【更新内容】
黑月编译器版本(4.1):
[+] 更换黑月工具设置界面。(系统必须安装有VC++2015运行库,黑月才能被易语言正常识别)
[!] 修复易语言5.92版本无法生成VC调用文件的问题。
[!] 增强生成VC调用文件功能,不需要保存当前源码也能正确生成。
[+] 新增 编译DLL将所有导出函数改为cdecl调用约定 的功能。
[!] 修复编译DLL时,符号表没有正确反映出调用约定而导致VC调用文件无法使用的问题。
[+] 新增生成事件功能
[-] 除去UPX压缩选项(可改用生成事件进行压缩)
[+] 新增特定备注功能
[!] 修改菜单“黑月指定模式编译”为“黑月指定配置编译”。
[!] 修复低概率出现选择黑月编译后黑月不处理的问题。(感谢 你凌哥i 协助测试)
[!] 编译前自动删除目标文件,避免某些情况下编译失败。
[+] 新增免配置直接调试静态库的功能(详情请更新后查看e\samples\黑月例程\调试静态库)。
[-] 废除旧版黑月的静态库调试方案,库文件名不再填写”静态库”。
[+] 新增黑月编译快捷键Alt+F7。
[+] 新增黑月编译调用接口,调用方法为
方法1.窗口消息
SendMessage(hEIdeWnd, BMM_COMPILE, lpstrFile, lpstrDescription);
hEIdeWnd为易语言IDE主窗口句柄
BMM_COMPILE常量值为WM_USER + 0x10,即1040(十进制);
lpstrFile为目标文件全路径(可为0);
lpstrDescription 为0;
下面为获取当前黑月版本的接口,返回值为文本指针,4.0以前的黑月版本返回NULL。
LPCSTR strVersion = (LPCSTR)SendMessage(hEIdeWnd, BMM_VERSION, 0, 0);
hEIdeWnd为易语言IDE主窗口句柄
BMM_VERSION常量值为WM_USER + 0x11,即1041(十进制);
方法2.接口函数
typedef int (__stdcall*BMCOMPILE)(LPCSTR lpstrFile, LPCSTR lpstrDescription);
typedef LPCSTR (__stdcall*GETBMVERSION)();
HMODULE hBM = GetModuleHandle(“blackmoon.fne”);
if (hBM)
{
BMCOMPILE pfnBMCompile = (BMCOMPILE)GetProcAddress(hBM, “BMCompile”);
GETBMVERSION pfnGetBMVersion = (GETBMVERSION)GetProcAddress(hBM, “GetBMVersion”);
if (pfnGetBMVersion)
{
::MessageBox(NULL, pfnGetBMVersion(), “当前黑月版本”, MB_OK);
}
if (pfnBMCompile)
{
pfnBMCompile(“C:\\test.exe”, NULL); //调用黑月编译
}
}
[+] 新增自动递增次构建号的功能(仅在使用黑月编译时有效)。
[+] 修复易语言在多屏环境下智能提示只出现在主屏的问题。
[+] 增加 文本到UTF16()、UTF16到文本() 两个支持库命令
[+] 新增配置项ConfigOnInstallPath=1时,黑月项目配置保存在黑月安装目录下。
[+] 增加项目配置,该配置保存在源码文件中,只对当前源码有效,编译时优先采用。
【安装说明】
一、必须解压安装到你的易语言安装路径,比如:C:\Program Files\e
二、在工具->支持库配置 里把黑月编译器插件选上
三、在工具菜单就出现黑月工具了,点击黑月资源编辑器,可以给程序增加资源脚本。
四、用4.13版最好把易的加入版本信息关了,用黑月自己的资源脚本来生成。否则在没资源的情况下,会破坏黑月编译出来程序。运行时出现不是有效WIN32程序的错误提示。
五、若需要黑月链接编译其它支持库,必须安装易语言5.0以上版本。
本文结束