C#开发奇技淫巧一:调试windows系统服务

原文:C#开发奇技淫巧一:调试windows系统服务

windows系统服务不能直接运行,只能在安装完服务之后启动、暂停、继续、停止服务,导致服务的调试不能使用一般的断点调试。

要调试系统服务,可以采用附加到进程的方式:在VS的工具栏中找到“调试”这个选项,然后选取“附加到进程”

然后选择相应的服务附加,再启动服务即可调试(前提是已经在服务的代码中打上了断点)

不过以上方法不能调试OnStart方法,即服务的启动并不能被调试到,这个时候,需要在OnStart方法中加上Debugger.Launch().这里有介绍:http://www.cnblogs.com/xzwplus/archive/2009/07/06/1129452.html

原文地址:https://www.cnblogs.com/lonelyxmas/p/9383891.html

时间: 2024-10-12 05:47:21

C#开发奇技淫巧一:调试windows系统服务的相关文章

20145239 实验一 Java开发环境的熟悉(Windows + IDEA)

实验一 Java开发环境的熟悉(Windows + IDEA) 实验内容 1.使用JDK编译.运行简单的Java程序:2.使用Eclipse 编辑.编译.运行.调试Java程序. 实验知识点 1.JVM.JRE.JDK的安装位置与区别:2.命令行运行javac:java:javac -cp; java -cp:3.PATH,CLASSPATH,SOURCEPATH的设定方法与应用:4.包管理:package:import:javac -d :5.Eclipse(Netbeans)管理Java项目

[转载]在iTOP-4412开发板上调试helloworld应用

本文转自迅为论坛:http://www.topeetboard.com 1.安装ADB驱动 在开发板上调试 Android 应用,首先要安装 ADB 驱动. 通过“SDK Manager.exe”来安装.如下图所示.另外需要注意的是,如果要使用 SDK Manager 安装软件,需要将 Eclipse 关闭. 安装完成后,打开文件夹中“USB_fastboot_tool\platform-tools”的命令行 cmd.exe, 如下图所示,输入命令“#adb”,然后回车.这里集成了 adb 命令

奇技淫巧之调试被远程线程注入的DLL

远程线程注入, 这东西大家都懂的, 一般都被大家用来干些小小的坏事情,比如API Hook~~将DLL注入到其它进程并不是难事,问题是这个被注入的DLL不太好调试,调试DLL本来就是个比较头疼的问题,更何况是这种运行在其它进程空间的DLL, 被注入DLL的程序,不崩溃还好,崩溃了,要定位崩溃点,真是够麻烦的. 这几天,无意中发现了一个可以调试这种DLL的方法. 首先,需要准备两样东西: 1.微软的Detours库, 下载地址戳这里: 下载链接 2.打开Detours安装目录下的samples\s

调试器开发实例_调试器框架设计

作为一个安全开发人员离不开调试器,它可以动态显示程序的执行过程,对于解决程序问题有极大的帮助,这些文章记录了我开发一个调试器雏形的过程,希望对你有帮助.或许我写的代码很拙劣,还请大家多多见谅! 我们使用  Microsoft Visual Studio 6.0 VC编译器来作为我们的开发工具想对一个程序进行调试,首先要做的当然是启动这个程序,这要使用CreateProcess这个Windows API来完成.例如: 1 // LilisiDebug.cpp : Defines the entry

JAVA card 应用开发 JCOP的调试方法

本文讲述如何在仿真环境下,调试JAVA card 的APPLET. 通过JCOP在Eclipse进行仿真调试,启动JCOP调试器,我们可以看到如下图: 要仿真调试,就是在命令输入框里面输入JCOP相关的指令,通过阅读JCOP的帮助文档,我们看到JCOP提供的命令不算繁多,大约40个. 下面我挑选常用的几个来说明: 1.      复位卡片:"/atr",如果不加任何参数,表示立即复位. 2.      发送指令:"/send",这是最直观的调试指令.可以逐个指令发送

Windows服务二:测试新建的服务、调试Windows服务

一.测试Windows服务 为了使Windows服务程序能够正常运行,我们需要像创建一般应用程序那样为它创建一个程序的入口点.像其他应用程序一样,Windows服务也是在Program.cs的Main()函数中完成这个操作.首先我们在Main()函数中创建一个Windows服务的实例,该实例应该是ServiceBase类的某个子类的对象,然后我们调用由基类ServiceBase类定义的一个Run()方法.然而调用Run()方法并不意味着就开始了Windows服务程序,必须要等到该对象的OnSta

微信开发的本地调试环境搭建

微信开发的本地调试只支持80号端口,实验了很多办法,总结一下: 办法一: 公司使用的是联通ADSL, 在路由器上做完端口映射后发现电信/联通封了80端口,所以这个办法走不通了. 办法二: 搜可以下,可以用ngrok,飞快的下载,设置好了.把ngrok的URL填入微信设置时,微信提示这种网址存在安全风险,已经不支持了. 办法三: 最后一招,端口转发(当你有一台外网linux服务器时) (1)首先:把该linux服务器占用80号端口的服务关闭: (2)打开服务器的远程转发功能,执行以下命令: sud

MongoDB安装,启动,注册为windows系统服务

MongoDB安装与启动 周建旭 2014-08-10 解压完后配置环境变量 下载Windows 32-bit或64-bit版本并解压缩,程序文件都在bin目录中,其它两个目录分别是C++调用是的头文件和库文件. bin目录中包含如下几个程序: 1. mongo.exe,命令行客户端工具. 2. mongod.exe,数据库服务程序. 3. mongodump.exe,数据库备份程序. 4. mongoexport.exe,数据导出工具. 5. mongofiles.exe,GridFS工具.

C++ 11开发环境搭建(Windows Platform)

C++ 11开发环境搭建(Windows Platform) IDE:Code::Blocks  12.11版本 Compiler:TDM-GCC        http://tdm-gcc.tdragon.net/           TDM64 Bundle GCC 4.8.1 问:什么是TDM-GCC? 答:A compiler suite for 32- and 64-bit Windows based on the GNU toolchain. tdm-gcc 官网: TDM-GCC