草庐IT

c++ - 为什么 RGBTRIPLE 和 RGBQUAD 按 BGR 顺序存储数据?

在Windows中,RGBTRIPLE和RGBQUAD结构以相反的顺序定义。这太违反直觉了,我想这一定是故意的。当然,这并不重要,但这让我很烦,所以我觉得值得一问。那么,为什么?定义:typedefstructtagRGBTRIPLE{BYTErgbtBlue;BYTErgbtGreen;BYTErgbtRed;}RGBTRIPLE,*PRGBTRIPLE,NEAR*NPRGBTRIPLE,FAR*LPRGBTRIPLE;typedefstructtagRGBQUAD{BYTErgbBlue;BYTErgbGreen;BYTErgbRed;BYTErgbReserved;}RGBQUA

c# - 在 C# 中获取文件和文件夹的透明外壳图标

我目前正在开发一个小型库,使您能够从文件和文件夹中获取图标。现在,我不在乎它是否只适用于win8+(因为那是我要使用它的地方),但是,我遇到了一个关于透明度的小问题。如果您看一下下图:我生成的(从我的库中)在左边,Windows资源管理器在右边。现在,您可能会看到,首先我生成的右上角有2条黑线,其次,背景颜色有所不同。所以我想知道的是这个;有没有办法获得与Windows资源管理器使用的完全相同的图像,还是我只是做错了?我的代码(为了简短起见,结构/外部等除外)如下,整个代码here.publicstaticclassIcon{publicstaticImageGetIcon(strin