起因是AI先写了个代码,用来加载exe的默认icon。
MS这个API的第二个参数的约定也有点奇葩。由来已久,都习惯了
// Resource ID 1 is the main icon embedded by winres
let hicon = match unsafe { LoadIconW(hinstance, PCWSTR(1_usize as *const u16)) } {
Ok(h) => h,
Err(_) => return,
};
然后第二个AI审核代码时跑了一下cargo clippy,应该是把那个参数1报成了dangling pointer。
反馈给第一个AI,第一个AI直接给改成了:
let hicon = match unsafe { LoadIconW(hinstance, PCWSTR(std::ptr::dangling::<u16>())) }
然后我测试时发现图标不对劲,才发现这个问题。
这是最后改好的:

--
FROM 123.122.126.*