`
izuoyan
  • 浏览: 9219173 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

.NET CF命令行调试器MDbg入门(三) 进程控制

阅读更多
老狼的话:David Kline是.NET CF团队一位非常优秀的开发者,看到他这个系列文章已经很久了,一直没空翻译。今天用下班后的时间翻译出来,也是希望有个督促,能让这个系列文章让更多朋友认识。原文地址:
http://blogs.msdn.com/davidklinems/archive/2006/08/11/695975.aspx

在这个系列的前两篇文章中,我讨论了MDbg的入门使用设备模拟器。这次,我们来讨论如何使用MDbg在调试过程中来控制设备上的进程。

Commands
cp[roc]
kp[roc]
pro[cessenum]

cp[roc]命令:运行一个进程,不将调试器attach到进程中

在我的第一篇文章中,我谈到了如何连接NetCFLaunch应用程序,和开始调试一个应用程序。那时我想调试所运行的进程,如果我想启动一个进程,但不进行调试。我会使用cp[roc]命令,示例如下:

mdbg> cp "\program files\webcrawler.exe"

如果命令能够启动一个进程,mdbg>的提示符将会出现。如果不能启动一个进程(例如:应用程序不存在),将会有一个错误提示出现。

pro[cessenum] 命令:列出当前设备中运行的进程

如果你经常需要了解哪些进程运行在你的设备上。例如,你的应用程序需要依赖于其他进程所提供的数据或者执行特别的人物。使用pro[cessenum]命令允许你检查所依赖的进程是否在运行。下面的例子是显示运行在你的Windows Mobile 5.0 Pocket PC上的进程:

mdbg> pro
Active processes on current machine:
(PID: 0x0dcb4002) NK.EXE
(PID: 0xedca5752) filesys.exe
(PID: 0x8dadc526) device.exe
(PID: 0xcd7f62ea) shell32.exe
(PID: 0xcd97c7a6) gwes.exe
(PID: 0xcd7f6732) services.exe
(PID: 0x2d4b6da6) CommLoader.exe
(PID: 0xcd517ac2) BatteryIndicator.exe
(PID: 0x2d5219ea) connmgr.exe
(PID: 0xad517b8a) srvtrust.exe
(PID: 0xed810392) repllog.exe
(PID: 0x2d4b6c76) poutlook.exe
(PID: 0xed3affce) cprog.exe
(PID: 0x2d99977a) rapiclnt
(PID: 0xeced62b2) webcrawler.exe
(PID: 0x2d0ed5be) tmail.exe
(PID: 0x8d30f68a) netcflaunch.exe

查看这个进程列表,我们可以看到早先调用cp[roc]命令时成功地运行了webcrawler.exe。

Kp[roc]命令:终止一个运行的进程

有一些情况下,我们需要终止一个进程的运行。当我的应用程序与其他进程通讯时,我需要研究失败代码路径,这将是非常有用的。下面的例子中,我使用kp[roc]命令来终止webcrawler.exe进程,这个进程是我用cp[roc]命令启动的。

mdbg> kp 0xeced62b2

传递给kp[roc]命令的值是被pro[cessenum]命令列出的进程ID(PID)。

(PID: 0xeced62b2) webcrawler.exe

注意:在终止设备上的进程时请务必小心,强制终止了错误的应用程序可能会让设备产生不稳定情况,或者相应迟缓。(译者注:NK.EXE、filesys.exe、device.exe、shell32.exe、gwes.exe和services.exe是系统运行相关的进程,所以不能强制终止。)

提示:使用命令行提示窗体中的QuickEdit模式或Mark and Paste功能可以让MDbg使用剪切和拷贝功能。


Enjoy!
-- DK
分享到:
评论

相关推荐

    基于Mdbg实现的C#脚本代码调试

    Mdbg就是这样一种工具,它是一个由微软开发的命令行接口的C#调试器,能够帮助程序员对C#代码进行深度调试。本文将深入探讨如何利用Mdbg实现C#脚本的代码调试,包括编译、设置断点以及单步执行等关键步骤。 首先,...

    dbg.vim:dbg.vim是vim scipt,用于调试程序。 (支持cdb,gdb,jdb,fdb,mdbg)

    dbg.vim 包装器调试器,可从vim控制命令行调试器。 支持的调试器: mdbg:.Net cdb:Windows C ++ gdb:GNU调试器jdb:Java调试器fdb:Flex调试器现在不支持pdb !! cdb是Windows的命令行调试器。 !! mdbg是.Net ...

    .NET程序调试技巧(一):快速定位异常的一些方法

    使用Mdbg.exe进行调试时,首先需要将其和依赖的MdbgCore.dll复制到客户机器上,然后通过命令行附加到目标进程,并通过输入调试命令来设置异常捕捉。 此外,如果客户环境的Silverlight应用服务器部署在外网,那么...

    deblector

    "Deblector" 是一个专为 .NET 开发者设计的插件,它允许用户在Reflector工具中直接调试进程。Reflector是一款流行的反编译器,能够帮助开发者查看、分析和理解.NET程序集的内部工作原理。通过 Deblector 插件,...

    Vebugger:交互式 shell 调试器的前端

    JDB - Java 调试器Mdbg - .NET 调试器(仅限 Windows) PDB - 用于调试 Python 脚本的 Python 模块RDebug - 用于调试 Ruby 脚本的 Ruby 命令行选项其他实现可以轻松添加,我会接受添加此类实现的拉取请求,只要它们...

    wincedebug.rar_visual c

    - **启动调试器**:在目标设备上运行Visual Studio 2005的远程调试器(mdbg.exe或vsdebug.exe),并保持与开发机的连接。 - **设置断点**:在源代码中设置断点,这些断点将在目标设备上执行时暂停程序。 - **开始...

    C#脚本

    C#脚本

    collins.rar

    CC-CEDict 词典: 下载(4.3M,来自 http://www.mdbg.net/chindict/chindict.php?page=cedict 的中-英词典,John Rowley制作) 英文-阿拉伯文词典: 下载(Khaldoun Mahmoud 制作) 中医教材仓库: 下载 ( Fredrik ...

    artxgj#twitter-chinese-text#插座1

    插座Search mdbg for definitionTweets containing 插座RT @bbcchinese: 亚马逊智能语音助理Alexa竟然

    artxgj#twitter-chinese-text#千足虫2

    千足虫Search mdbg for definitionTweets containing 千足虫2021-12-19 03:13:05 UTC ~ 联合早报

    artxgj#twitter-chinese-text#清汤1

    清汤Search mdbg for definitionTweets containing 清汤2022-01-21 08:50:51 UTC ~ 联合早报 L

    GTransChinese-crx插件

    扩展谷歌翻译:是否MDBG定义和NCIKU例子查找和图像/网络搜索突出显示的中文短语 在Google翻译的源代码或结果窗口中突出显示部分或全部中文文本,以获取更多信息和翻译成英文。页面上的一个新部分将被创建,其中包含...

Global site tag (gtag.js) - Google Analytics