Windows XP 调用LoadIcon获取进程中的icon返回NULL,且GetLastError返回2,但在Windows 10中却可以正常返回句柄

最近想蹭蹭吴牙签的热度,于是想做一个在最顶层DC上绘制吴签XX的单文件程序,但是正当我用虚拟机测试时,它显示不出来,于是我查看了GetLastError的返回值,发现它在两次情况下分别返回2和1813.
部分代码如下

//rc.rc
1234 ICON "word.ico"
//main.cpp
HICON icon = LoadIcon(NULL,MAKEINTRESOURCE(1234));//GetLastError返回2
icon = LoadIcon(GetModuleHandle(NULL),MAKEINTRESOURCE(1234));//GetLastError返回1813
DrawIcon(GetDC(NULL),icon,0,0)

word.ico

img

有没有修改过rc里面的资源文件呢?

另外,似乎全网都没答案(Stackoverflow,csdn目前,微软document等等)~~~A~~~~~~~~A~~~~~~~~~