首页
社区
课程
招聘
[转发]黑月编译器插件v4.1.7.7测试版
发表于: 2024-5-18 06:23 3539

[转发]黑月编译器插件v4.1.7.7测试版

2024-5-18 06:23
3539
收藏
免费 1
支持
分享
最新回复 (4)
雪    币: 110
活跃值: (3315)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
感谢分享
2024-5-18 07:53
0
雪    币: 233
活跃值: (2287)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
居然更新了,更新了啥内容
2024-5-18 13:23
0
雪    币: 3807
活跃值: (2164)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
2022年更新的吧....
2024-5-19 10:33
0
雪    币: 2224
活跃值: (2151)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
[被封七号升级记录]
4.1.7.7版本(2022年7月26日)
本次更新特别鸣谢以下技术指导:
  黑月原作者: 云外归鸟
  黑月前升级负责人: 泪闯天涯(邓学彬)
  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时,黑月项目配置保存在黑月安装目录下。
[+] 增加项目配置,该配置保存在源码文件中,只对当前源码有效,编译时优先采用。

黑月核心静态库版本(7.7):
[!] 修改命令:数组清零、到时间、标准输出 使与易语言执行结果保持一致。(感谢github@NyanRabbit)
      详情见github开源地址中PR#5-#7
[!] 修复 文本到UTF8、 UTF8到文本 崩溃问题。
[!] 修复加密文件读写命令崩溃问题。
[!] 修复 输入框 命令,兼容易语言后加的父窗口参数。
[!] 修复 取星期几 当日期在1899年12月30日之前时,计算错误的问题。
[!] 修复 取时间间隔/增减时间 当时间穿越1899年12月30日时,计算结果错误的问题。
[!] 修复 取时间间隔 在部分情况下返回值与易不一致的问题。
[!] 修复时间到文本、文本到时间及其他时间与文本转换相关的函数BUG。
[!] 如果依然发现时间相关函数出现黑月与易语言不同返回值的情况,那一定是易语言的BUG。
[!] 修复双精度小数转文本时的精度低于易语言的问题。(涉及函数 到文本/信息框/标准输出/写出文本/写文本行 等)
[!] 修复小数转文本后如果没有小数点就会把整数部分右侧0全删除的问题。
[!] 修复 删全部空 未能删除部分空格的BUG。(感谢 被封八号 的反馈)
[!] 修复 插入字节集 在内存文件模式下的BUG。(感谢 云淡风清 的反馈)
[!] 修复 取字节集右边 当用户未提供正确的长度时会越界的问题。(感谢 深夜出没的狼 的反馈)
[!] 修复 读入一行 的BUG。(感谢hmyroot、星辰云网络验证的反馈)
[!] 修复 到半角、到全角 会崩溃的问题。(感谢goldstars、深夜出没的狼的反馈)
[!] 修复 替换子字节集、替换子文本、运行控制台程序、分割字节集、分割文本、删全部空 在特定极端环境下会崩溃的问题。
[!] 修复 到文本() 在将小数转成文本时,小数点后面无数据时依然会保留小数点的问题。
[!] 修复文件操作相关的命令不知道在什么情况下会进入死循环的问题。
[+] 增加 文本到UTF16()、UTF16到文本() 的实现代码
[!] 修复UTF8到文本()、UTF16到文本()当参数数据非空中止时转换错误的问题
2024-5-19 20:24
0
游客
登录 | 注册 方可回帖
返回
//