能力值:
( LV9,RANK:310 )
|
-
-
2 楼
牛,顶一下,虽然碰到过这问题,却没本事分析
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
分析的精彩,此帖应精华
|
能力值:
( LV4,RANK:50 )
|
-
-
4 楼
谢谢鼓励
|
能力值:
( LV5,RANK:70 )
|
-
-
5 楼
对于没有BOM的文件,先尝试用当前页码(CP_ANSI)转成UNICODE,如果失败,再尝试用UTF-8转成UNICODE应该可以解决此问题.
另外,大多数windows下的UTF-8文件都是带有BOM的,所以,简单的把把所有没有BOM且不符合UTF-8规则的文件作为当前代码页ANSI来处理也可算是一个取巧的办法,呵呵
|
能力值:
( LV8,RANK:120 )
|
-
-
6 楼
超级大牛。
拜读了。
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
功力尚浅
竟然没看明白
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
if( cb >= 3 && (PBYTE)lpBuffer[3] == 0xBF)
这一行似乎应该是
if( cb >= 3 && (PBYTE)lpBuffer[2] == 0xBF)
另外,UE的二进制比较功能是可以看到其真实二进制字节的
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
有这种事情,不错不错。
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
原来是这样,佩服lz的钻研精神
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
WinDbg载入,跟踪到notepad!SaveFile,仔细看了一下,保存的过程如下:WideCharToMultiByte( GetACP(), ... , lpEditWCharBuf, ... );然后直接WriteFile写入到txt文件中,并没有进行任何附加的操作
请问下 这个地方你在WinDbg中是怎么操作的?非常感谢
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
佩服 讲的 很 精彩
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
补充下,默认打开方式的制式不一样,用ansi方式保存的用ansi方式打开是正常的,同理。
|
|
|