找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 22|回复: 2

炫彩界面窗口,如果EXE初始化前,将资源里面的XCGUI.dll释放到运行目录

[复制链接]

1

主题

13

回帖

69

积分

注册会员

积分
69
QQ
发表于 昨天 22:58 | 显示全部楼层 |阅读模式
悬赏1金钱未解决
炫彩界面窗口,如果EXE初始化前,将资源里面的XCGUI.dll释放到运行目录?

把exe目录下的XCGUI.dll删除后,尝试过:
1.窗口绘制时事件释放,但是没调用到
2.入口函数 前面释放,也调不到;
3.入口函数 最前面增加弹窗,也调不到;

问题:如果才能将资源里面的XCGUI.dll释放到运行目录?

代码如下:

        系统消息框(0, "启动窗口_开始绘制", "", 1)


        // 1. 从资源中查找名为 "界面dll" 的资源
        正整型 资源大小 = 0
        空类型 *资源地址 = RC资源查找文件("界面dll", &资源大小)  // 假设资源 ID 已定义为 "界面dll"

        调试输出("资源大小 " + 到文本(资源大小))
        调试输出("资源地址 " + 到文本(资源地址))

        如果 (资源地址 == NULL)
                调试输出("资源加载失败")
                返回 -1
       
        // 2. 获取程序运行目录
        文本型 运行目录 = 取运行目录()
        文本型 文件路径 = 运行目录 + "\\XCGUI.dll"  
        //"D:" + "\\XCGUI.dll"
        调试输出("文件路径 " + 文件路径)

        // 3. 写入文件到运行目录
        文件类 文件对象
        逻辑型 打开状态 = 文件对象.打开写入(文件路径)
        调试输出("打开状态 " + 到文本(打开状态))

        整型 写入大小 = 文件对象.写入数据(资源地址, 资源大小)
        调试输出("写入大小 " + 到文本(写入大小))
        文件对象.关闭()

        如果 (写入大小 != 资源大小)
                调试输出("文件写入不完整")
                返回 -3
       
        调试输出("资源已成功释放到:", 文件路径)

1

主题

13

回帖

69

积分

注册会员

积分
69
QQ
 楼主| 发表于 昨天 22:59 | 显示全部楼层
函数 整型 入口函数_窗口() //窗口程序入口函数, 程序启动优先进入此函数
        //在进入UI前需要运行的代码写在这里
        系统消息框(0, "启动窗口_开始绘制", "", 1)
        // 1. 从资源中查找名为 "界面dll" 的资源
        正整型 资源大小 = 0
        空类型 *资源地址 = RC资源查找文件("界面dll", &资源大小)  // 假设资源 ID 已定义为 "界面dll"

        调试输出("资源大小 " + 到文本(资源大小))
        调试输出("资源地址 " + 到文本(资源地址))

        如果 (资源地址 == NULL)
                调试输出("资源加载失败")
                返回 -1
       
        // 2. 获取程序运行目录
        文本型 运行目录 = 取运行目录()
        文本型 文件路径 = 运行目录 + "\\XCGUI.dll"  
        //"D:" + "\\XCGUI.dll"
        调试输出("文件路径 " + 文件路径)

        // 3. 写入文件到运行目录
        文件类 文件对象
        逻辑型 打开状态 = 文件对象.打开写入(文件路径)
        调试输出("打开状态 " + 到文本(打开状态))

        整型 写入大小 = 文件对象.写入数据(资源地址, 资源大小)
        调试输出("写入大小 " + 到文本(写入大小))
        文件对象.关闭()

        如果 (写入大小 != 资源大小)
                调试输出("文件写入不完整")
                返回 -3
       
        调试输出("资源已成功释放到:", 文件路径)


        炫彩_初始化(真)  //初始化设计器使用的炫彩界面库
        炫彩_启用自动重绘UI(真) //当修改UI后将自动调用重绘函数更新UI
        #加载资源文件     //指示在此处自动加载资源文件, 根据项目属性设置, 从文件 或 从内存
        主窗口.运行()    //运行上面设计器生成的类中的运行()函数
        //在进入UI后需要运行的代码写在这里

        炫彩_运行()  //运行消息循环
        炫彩_退出()  //程序退出释放界面库资源
        返回 0

5

主题

15

回帖

137

积分

注册会员

积分
137
发表于 昨天 23:42 | 显示全部楼层


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|炫语言 | 炫彩界面库 | 用户所需, 正是我所做! ( 鄂ICP备2023014763号-1 )

GMT+8, 2025-8-12 02:19 , Processed in 0.078297 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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