.NET C#微信公众号开发远程断点调试(本地远程调试生产环境代码)
最近在做微信公众号开发,由于之前没有接触过,突然发现调试不方便,不方便进行断点跟踪调试.因为微信那边绑定的服务器地址必须是公网地址,但是还是想进行断点调试(毕竟这样太方便了,程序有Bug,一步步断点跟踪不是很爽么,哈哈)
因此上网搜了一下,发现好多是使用软件之类的进行请求转发从生产环境转发请求到开发环境上,发现有的太麻烦了.
有的人喜欢日志记录,这个看个人习惯了,我比较喜欢断点调试罢了,也可以看见程序执行流程不是么
突然想到Vs有一个附加到进程的远程调试.于是玩了一把.我们直接开始(服务器上就不要使用发布版本代码了,代码和本地开发一样,不然是不能调试的)
本篇是以开发环境的Visual Studio2013旗舰版以及生产环境里阿里云的Windows Server 2008 R2服务器为例(篇尾附3分钟在线演示,不清楚可以看看)
只需四步,废话不多说,我们直接开始
Step1:我们首先从vs安装目录找到远程调试工具的x86 x64文件夹拷贝到生产环境上.

Step2:在生产环境服务器中启动远程调试工具msvsmon.exe 按下图进行设置 0代表一直运行 比如你设置900秒默认 那么900秒内不使用调试器的情况下 远程调试器会自动关闭

Step3:我们在Vs中选择调试菜单下的附加到进程,传输选远程无身份验证,限定符填写生产环境服务器IP,然后点刷新,从下面进程中找到w3wp.exe进程(注意:如果你服务器正在运行多个站点那么找到对应的进程就行,一个站点对应一个w3wp.exe进程,有进程ID的,自己找到对应的就行,不要问我怎么找,自己找!),然后附加到Vs上
服务器中进程列表

Vs中附加进程中连接到的远程服务器的进程列表 和上面是一样的

Step4:最后我们在程序中打上断点,直接向微信公众号发请求这时候请求就可以到调试器里面了.可以一步步断点调试了.

如果上面有不清楚的,可以观看下面的3分钟视频演示,逐步进行即可.
http://www.nginx.online/wx.wmv (360急速浏览器和猎豹浏览器可直接在线观看)
如果也解决了你的问题 手滑点一下下方的好文要顶 欢迎大家交流指教
.NET C#微信公众号开发远程断点调试(本地远程调试生产环境代码)的更多相关文章
- 微信公众号开发系列教程一(调试环境部署续:vs远程调试)
http://www.cnblogs.com/zskbll/p/4080328.html 目录 C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试 ...
- C#微信公众号开发系列教程三(消息体签名及加解密)
http://www.cnblogs.com/zskbll/p/4139039.html C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试) C ...
- C#微信公众号开发系列教程二(新手接入指南)
http://www.cnblogs.com/zskbll/p/4093954.html 此系列前面已经更新了两篇博文了,都是微信开发的前期准备工作,现在切入正题,本篇讲解新手接入的步骤与方法,大神可 ...
- .NET开发者如何愉快的进行微信公众号开发
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:这篇文章只是一个如何提高开发效率的简单指导和记录,不会涉及具体的微信公众号开发内容. ...
- C#微信公众号开发系列教程六(被动回复与上传下载多媒体文件)
微信公众号开发系列教程一(调试环境部署) 微信公众号开发系列教程一(调试环境部署续:vs远程调试) C#微信公众号开发系列教程二(新手接入指南) C#微信公众号开发系列教程三(消息体签名及加解密) C ...
- C#微信公众号开发系列教程五(接收事件推送与消息排重)
微信公众号开发系列教程一(调试环境部署) 微信公众号开发系列教程一(调试环境部署续:vs远程调试) C#微信公众号开发系列教程二(新手接入指南) C#微信公众号开发系列教程三(消息体签名及加解密) C ...
- C#微信公众号开发系列教程四(接收普通消息)
微信公众号开发系列教程一(调试环境部署) 微信公众号开发系列教程一(调试环境部署续:vs远程调试) C#微信公众号开发系列教程二(新手接入指南) C#微信公众号开发系列教程三(消息体签名及加解密) C ...
- 微信公众号开发之网页中及时获取当前用户Openid及注意事项
目录 (一)微信公众号开发之VS远程调试 (二)微信公众号开发之基础梳理 (三)微信公众号开发之自动消息回复和自定义菜单 (四)微信公众号开发之网页授权获取用户基本信息 (五)微信公众号开发之网页中及 ...
- 带领技术小白入门——基于java的微信公众号开发(包括服务器配置、java web项目搭建、tomcat手动发布web项目、微信开发所需的url和token验证)
微信公众号对于每个人来说都不陌生,但是许多人都不清楚是怎么开发的.身为技术小白的我,在闲暇之余研究了一下基于java的微信公众号开发.下面就是我的实现步骤,写的略显粗糙,希望大家多多提议! 一.申请服 ...
随机推荐
- FreeMarker 日期转换
${parameters.fieldDate?date} //标准日期转日期字符串 ${parameters.fie ...
- 十五天精通WCF——第二天 告别烦恼的config配置
经常搞wcf的基友们肯定会知道,当你的应用程序有很多的“服务引用”的时候,是不是有一种疯狂的感觉...从一个环境迁移到另外一个环境,你需要改变的 endpoint会超级tmd的多,简直就是搞死了人.. ...
- 2. Docker - 安装
一.Docker介绍 1. Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上, 也可以实现虚拟化. 容器时完全使用沙 ...
- nodejs模块——http模块
http模块主要用于创建http server服务. 本文还用到url模块和path模块,还有fs模块.url模块用于解析url,path模块用于处理和转换文件路径. 一.简单应用 代码如下: // ...
- AI (Adobe Illustrator)详细用法(二)
本文主要是介绍形状的创建与编辑. 一.系列形状工具 1.矩形工具 矩形的作用很大,比如输入框,按钮,图片的大小,比如相片应用中每一个照片占的比例是多大. 初步的UI图的话,会画矩形和圆角矩形就够了. ...
- [转]ng-grid
本文转自:http://angular-ui.github.io/ui-grid/ Getting Started Steps for getting started (example on righ ...
- Unity Camera的两种模式
http://www.cnblogs.com/zhaoqingqing/p/3302484.html
- WAMP中phpMyAdmin登陆不了问题的解决方法
WAMP中phpMyAdmin登陆不了问题的解决方法
- [No00001D]解决5个问题,马上开口说英语
- MySQL 基础语句的练习2
CREATE TABLE student ( id INT, NAME ), Chinese FLOAT, English FLOAT, Math FLOAT ); ,,,); ,,,); ,,,); ...