从崩溃转储确定Eclipse的版本 [英] Determine version of Eclipse from crash dump
问题描述
不幸的是,我通常的方式不起作用, lm vm
不显示版本信息:
0:048> lm vm eclipse
开始结束模块名称
00000000`00400000 00000000`0044f000 eclipse(延迟)
图像路径:C:\Program Files\eclipse\eclipse.exe
图片名称:eclipse.exe
时间戳:Wed Feb 04 14:12:28 2015(54D21ABC)
CheckSum:00050686
ImageSize:0004F000
文件版本:0.0.0.0
产品版本:0.0.0.0
文件标志:0(掩码0)
文件操作系统:0未知基本
文件类型:0.0未知
文件日期:00000000.00000000
翻译:0000.04b0 0000.04e4 0409.04b0 0409.04e4
时间戳与发布日期不完全相关的Eclipse,所以我不知道这是正式版本还是每夜的版本。
有没有另外一种确定转储中Eclipse版本号的方法? >
飞溅屏幕救援:
0:048> .foreach(addr {s - [1] u 0000000 L?ffffffff `ffffffff\splash.bmp}){du $ {addr} -0n42 L0n31}
00000000`005f82dc4.4.2.v20150204-
00000000`005f97ce
00000000`7200de06itdata
00000000`7200de5ec%s
00000000`e0f74a36
00000000`e0f7cd864.4.2.v20150204-1700\splash.bmp
00000000`e0f9f3e04.4.2.v20150204-1700\splash.bmp
我通过在十六进制编辑器中搜索转储中的潜在版本号,然后构建一个WinDbg的命令,以防其他任何人需要找到Eclipse的版本。
上面的脚本当然可以在启动屏幕文件被重命名的任何时候断开,或者Eclipse决定不要再使用闪屏了。
I have a crash dump of Eclipse and want to report a bug. For the bug report, I'd like to specify the version of Eclipse that crashed, since it might be related to the problem.
Unfortunately, my usual way does not work, lm vm
does not show version information:
0:048> lm vm eclipse
start end module name
00000000`00400000 00000000`0044f000 eclipse (deferred)
Image path: C:\Program Files\eclipse\eclipse.exe
Image name: eclipse.exe
Timestamp: Wed Feb 04 14:12:28 2015 (54D21ABC)
CheckSum: 00050686
ImageSize: 0004F000
File version: 0.0.0.0
Product version: 0.0.0.0
File flags: 0 (Mask 0)
File OS: 0 Unknown Base
File type: 0.0 Unknown
File date: 00000000.00000000
Translations: 0000.04b0 0000.04e4 0409.04b0 0409.04e4
The time stamp does not exactly correlate to release dates of Eclipse, so I wonder whether this was an official release or a nightly build.
Is there another method of determining the version number of Eclipse in the dump?
Splash screens to the rescue:
0:048> .foreach (addr {s -[1]u 0000000 L?ffffffff`ffffffff "\splash.bmp"}) {du ${addr}-0n42 L0n31}
00000000`005f82dc "4.4.2.v20150204-1700\splash.bmp"
00000000`005f97ce "4.4.2.v20150204-1700\splash.bmp"
00000000`7200de06 "itdata"
00000000`7200de5e "c%s"
00000000`e0f74a36 ""
00000000`e0f7cd86 "4.4.2.v20150204-1700\splash.bmp"
00000000`e0f9f3e0 "4.4.2.v20150204-1700\splash.bmp"
I found this solution by searching the dump for potential version numbers in a hex editor, then building a command for WinDbg in case anyone else needs to find out the version of Eclipse.
Above script may of course break at any time when the splash screen file is renamed or Eclipse decides to not use a splash screen any more.
这篇关于从崩溃转储确定Eclipse的版本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!