递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 418|回复: 4
打印 上一主题 下一主题

[视窗] 【已解决】 接收到未经处理的严重异常,代码为: 0xE06D7363

[复制链接]

4

主题

9

帖子

178

积分

注册会员

Rank: 2

积分
178
跳转到指定楼层
楼主
发表于 2025-11-28 11:14:33 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 mogo 于 2025-11-29 15:03 编辑

我想只录制鼠标周围,这样最终的文件应该会比较小。使用cximage转出的gif不管怎么弄每帧间隔都是1秒,而且红色的指示线变成黑色了。所以想试试gdi+。现在问题是在 “系统热键类_热键被按下” 的方法中加入代码后启动就报错,为什么还未执行到这里就报错呢?
main.v (486.34 KB, 下载次数: 2)
回复

使用道具 举报

29

主题

2756

帖子

9596

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
9596
沙发
发表于 2025-11-28 14:19:10 | 只看该作者
主要问题在 GdiplusStartupInput 结构体上,这玩意带构造函数,不是纯C的结构体了,不能用“视窗.结构类”封装,目前只能用别名封装或者全部在嵌入语句里调用。

  1. <火山程序 类型 = "通常" 版本 = 1 />

  2. 类 GdiplusStartupInput <公开 @视窗.外部头文件 = "gdiplus.h" @别名 = "Gdiplus::GdiplusStartupInput" @别名类型 = 本地类>
  3. {
  4.     变量 GdiplusVersion <公开 类型 = 整数 @输出名 = "GdiplusVersion">
  5.     变量 SuppressBackgroundThread <公开 类型 = 逻辑型 @输出名 = "SuppressBackgroundThread">
  6.     变量 SuppressExternalCodecs <公开 类型 = 逻辑型 @输出名 = "SuppressExternalCodecs">
  7. }
复制代码


GdiplusStartup里的参数input改成变整数,然后用“取变量地址”传参。
回复

使用道具 举报

4

主题

9

帖子

178

积分

注册会员

Rank: 2

积分
178
板凳
 楼主| 发表于 2025-11-29 10:53:54 | 只看该作者
Xelloss0618 发表于 2025-11-28 14:19
主要问题在 GdiplusStartupInput 结构体上,这玩意带构造函数,不是纯C的结构体了,不能用“视窗.结构类” ...

感谢解惑。问题依旧存在,注释掉取编码器数量的这一行新旧代码都可以成功初始化。但我还是想不明白为什么没有执行到这里就报错了,为什么呢?





回复

使用道具 举报

29

主题

2756

帖子

9596

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
9596
地板
发表于 2025-11-29 11:47:25 | 只看该作者
看了一下,GetImageEncodersSize 在DLL里的导出函数是 GdipGetImageEncodersSize,找不到函数自然就崩了
回复

使用道具 举报

4

主题

9

帖子

178

积分

注册会员

Rank: 2

积分
178
5#
 楼主| 发表于 2025-11-29 15:02:55 | 只看该作者
Xelloss0618 发表于 2025-11-29 11:47
看了一下,GetImageEncodersSize 在DLL里的导出函数是 GdipGetImageEncodersSize,找不到函数自然就崩了 ...

原来如此,非常感谢!!!
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2025-12-16 08:59 , Processed in 0.088216 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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