VS2008远程调试方法

合集下载

WindowsServer2008配置远程桌面连接

WindowsServer2008配置远程桌面连接

WindowsServer2008 - 远程桌面连接-自定义远程连接数量分为几大步:一、安装终端服务(Terminal Services) "控制面板" -"管理工具" -"服务器管理器" -"角色" -右键添加角色(选择终端服务)二、安装TS 授权管理器(TS Authorize Control Services) 类似步骤一,只不过,它是添加功能三、许可证服务器激活参照下面许可证服务器激活四、选择授权模式(每设备与每用户)参照下面两种模式的区别五、修改远程连接数量"控制面板" -"管理工具" -"终端服务(文件夹)" -"终端服务配置" -"授权诊断" -右侧显示区域中的“RDP-Tcp”选项,并用鼠标右键单击“RDP-Tcp”选项,再点选快捷菜单中的“属性”命令,进入到“RDP-Tcp”选项设置界面;点选“RDP-Tcp”选项设置界面中的“网络适配器”选项卡,在对应的选项设置页面中,将最大连接数参数修改为适当的数值,该数值通常需要根据服务器系统的硬件性能来设置,一般情况下我们可以将该数值设置为“5”以下,最后单击“确定”按钮执行设置保存操作。

或使用注册表:系统的“开始”菜单,从中点选“运行”命令,在弹出的系统运行对话框中输入字符串命令“regedit”,单击回车键后,进入系统注册表控制台窗口;展开该控制台窗口中的“HKEY_LOCAL_MACHINE\SOFTWARE\Polic ies\Microsoft\Windows NT\Terminal Services”注册表子项(如图2所示),在目标注册表子项下面创建好“MaxInstanceCount”双字节值,同时将该键值数值调整为“10”,最后单击“确定”按钮保存好上述设置操作。

VS2008连接远程SQL

VS2008连接远程SQL
,[quarternum]
,[ts]
FROM [FSRHR_test].[dbo].[bd_accperiod]
select dr from bd_accperiod
DataServer=.\SQLEXPRESS;InitialCatalog=Northwind;UserID=sa;Password=sa123456
7.设置web.config文件:在web.config文件添加如下程序:
<connectionStrings><addname="LocalSqlServer"connectionString="DataSource= .\SQLEXPRESS;InitialCatalog=Northwind; UserID=sa;Password=sa123456" providerName="System.Data.SqlClient"/></connectionStrings>
DataServer=.\SQLEXPRESS;InitialCatalog=Northwind;UserID=sa;Password=sa123456
DataServer=服务器名\SQLEXPRESS;InitialCatalog=Northwind;UserID=sa;Password=sa123456 DataServer=localhost\SQLEXPRESS;InitialCatalog=Northwind;UserID=sa;Password=sa123456 DataServer=.;InitialCatalog=Northwind;UserID=sa;Password=sa123456 DataServer=服务器名;InitialCatalog=Northwind;UserID=sa;Password=sa123456 ……

VS 远程调试

VS  远程调试

最近迁移一个Web服务,在原来的服务器上运行得好好的,拷贝到新服务器上的时候就运行失败了,提示数据库连接错误,实在不想各种找BUG猜原因了,就了解了下VS远程调试。

步骤1、在IIS服务器上(或C/S客户端机器)运行Msvsmon.exeMsvsmon.exe在vs的程序目录里有,具体位置如图:X64为64位机器使用,X86为32为机器使用。

将X64或X86复制到服务器上任意目录,双击X64/X86目录下的Msvsmon.exe出现如下对话框。

单击菜单栏【工具】——【选项】选项设置对话框,TCP/IP部分使用默认4018端口,身份验证模式部分可按如下原则配置。

如果要求较高的安全性,可以选择“Windows身份验证”,再单击“权限”,选择服务器上已有的账户作为远程调试登录账户,默认为当前登录客户,如图。

也可以在Windows用户账户管理模块单独新建用户,专门用于远程调试,此时,VS附加时,传输栏应选择“默认值”。

如果安全性要求较低,或只是临时调试,可以选择“无身份严阵”,此时,VS附加时,传输栏应选择“远程(无身份验证)”。

2、在开发机器的VS 2013上点菜单栏【调试】——【附加到进程】(或直接快捷键Ctrl+Alt+P)。

3、在第2步弹出的对话框中,“传输”栏选择“远程(无身份验证)”,“限定符”栏内填写远程机器的IP地址,填好后直接回车,之后下面的“可用进程”栏就会出现很多进程。

如图3-1图3-1如果调试的是网站或则WebService服务,就选择w3wp.exe 进程,如果是一般的窗体应用,就直接选对应的进程名(前提是该程序已在服务器上运行)。

注意!1)、如果服务器上不止运行一个网站,那看到的w3wp.exe进程就会有多个,如图3-2,这时就看后面的“用户名”这一列,斜杠后面的就是网站名称,调试时选择对应名称的网站进程。

图3-22)、需保证服务器端程序是最新编译好的程序才能正常进入调试。

c#开发中的远程调试

c#开发中的远程调试

C#远程调试这里所说的远程调试,是指在系统开发时,在一台机器上调试另一台机器上运行的程序,平时遇到的类似情况为开发人员,调试服务器上运行的web服务远程调试需要在远程机器上运行远程调试控制器,运行的方式主要有两种,一是通过文件共享的方式运行,二安装运行,对于共享运行,以下调试功能不可用:1.在Win98,Win Me 上进行调试2.单步执行Xml Web Service3.自动调试 Web 应用程序或基于ATL Server 的ISAPI 扩展二:远程调试控制器的安装远程调试控制器是区分版本的,如果调试环境环境为Vs2005,那么安装的远程调试控制器的本本需要与Vs2005匹配,如果调试环境为Vs2008,则控制器要与Vs2008匹配,在每个VS开发环境安装包下,都有个Remote Debugger目录,此目录下又有ia64、x64、x86目录,每个目录下都有一个rdbgsetup.exe文件,此文件即是远程调试控制器安装文件,具体安装哪个版本由平台版本决定.三:配置1、如果远程服务器与调试机器都启用了Windows防火墙,则双方都需要开发TCP 协议135端口2、如果双方通过IPSec 进行网络通信,则要打开UDP协议4500端口与UDP协议5003、若要从启用了Windows 防火墙的Windows XP SP2 计算机对Windows 95/98/Me 计算机进行远程调试,必须使用dcomcnfg 为匿名登录启用远程访问,操作方法为:(1)运行dcomcnfg命令,打开组建服务窗口(2) 组建服务-计算机-我的电脑-鼠标右键-属性-COM安全-编辑权限-顶部用户列表中选择“匿名登陆”-下边权限列表中选择“远程访问”然后点确定保存配置。

4、如果远程主机当前登陆用户不允许调试,要修改安全策略:本地安全策略—用户权限分配—调试程序—双击把登陆用户添加到列表中并保存。

5 如果调试机器为WinXp系统需要在安全策略-本地策略-安全选项-本地账户的共享与安全模式项修改成"经典-本地用户已自己的身份验证"6.把将来会连接到远程调试控制器的用户添加到远程调试控制器的用户列表中四:调试1、建立一个与远程服务器上有的用户名称、密码完全一致的本地用户,并以此用户登陆系统。

vs2008打开并且调试wince工程

vs2008打开并且调试wince工程

vs2008打开并且调试wince工程
要在vs2008中打开已经生成的wince程序,首先你要下载一下一个wince的模拟器,我下载的是wince6.0的版本。

打开wince模拟器的文件夹
第一步:选择连接加载.bat文件,这是注册界面,点击确定
第二步:选择SDMMC 800.bat(这是屏幕的分辨率,看你的工程里面的屏幕配置)
第三步:选择连接启动.bat,然后将其他里面的设备插入底座
•1
•2
•3
•4
•5
在第二步的时候,wince6.0的模拟器已经打开了
首先在左上角有个文件按钮,点击文件->配置->共享文件夹(在这个里面插入你的wince工程)
退出到主界面:
然后点击开始,选择设置里面的控制管理,
a:点击PC-连接,点击OK键就行了
b:点击网络和拨号->新建连接->直接连接->下一步->选择设备
选择DMA
然后就完成,可以退出到wince主界面了
这是最主要的一步:你要确定你的电脑里是否下载了windows Mobile设备中心,我之前就没装,然后大部分时间就卡在这了。

版本网上可以下载的。

这是已经连接好了,这时候就可以使用wince模拟器了
这是没有连接的
点击移动设备->连接设置,要是上面的步骤都做好了,会出现下面的界面:
做到这一步,说明wince模拟器已经配置好了,用vs2008打开你的wince工程,你就可以进行调试和运行了
wince6.0模拟器及其相关软件我已经上传到了我的资源,希望可以帮助到大家。

(qq:1143403680,欢迎交流)。

vs2008调试技巧

vs2008调试技巧

VS2005调试技巧集合/rainylin/archive/2007/09/06/1775125.aspx下面有从浅入深的6个问题,您可以尝试回答一下1. 一个如下的语句for (int i = 0; i < 10; i++){if (i == 5)j = 5;},什么都写在一行,你怎么在j=5前面插入断点2. 在一个1000次的循环体内部设置断点,你希望当循环进行到900次后中断,怎么才能做到呢?3. 你有一个表达式在上面循环的某一次发生了变化,你想知道是哪一次,在哪个地方,怎么才能做到?4. 你希望你的断点在被命中100次后,每命中三次中断一次,比如第103,第106,第109怎样做?5. 你有在调试一个服务程序,希望在其内部打上了断点,可是,由于这是一个公用的服务你不希望其他访问这个服务的程序被你的调试所干扰,你想怎么办?6. 怎样知道2个断点中断的时间间隔问题1,21. 一个如下的语句for (int i = 0; i < 10; i++){if (i == 5)j = 5;},什么都写在一行,你怎么在j=5前面插入断点2. 在一个1000次的循环体内部设置断点,你希望当循环进行到900次后中断,怎么才能做到呢?这两个问题最简单,我在一个例子里说明例如如下循环for(int i=0;i<1000;i++){doSomeThing......}在循环的大括号上单击右键,插入断点,用这个方法,可以对付那些喜欢把语句写在一行上的家伙,其实,随着.Net3.5中Linq的出现,我们肯定也会经常在在一行上写复杂的表达式,这个时候用这种插入方法会比较管用ok,现在我们来编辑这个断点的条件,在断点上右键单击,选择如图菜单项在弹出的窗口中可以设置断点命中的条件i==900注意我是在调试C#代码,默认的条件语句语法是C#,如果你想切换,那就需要用Ctrl- B,来插入断点,并在弹出窗口中选择语言通过这样设置条件断点,我们就可以解决我们的问题1,2了问题3你有一个表达式在上面循环的某一次发生了变化,你想知道是哪一次,在哪个地方,怎么才能做到?同样通过设置条件断点我们还可以解决我们的问题3,对表达式变化的跟踪string user="yizhu2000"for(int i=0;i<10000;i++){DoSomething1().......DoSomethingN()}当循环执行完毕时我们发现user变成了"smart_boy",你不知道这个值是在第几次循环的时候变化的,那么你是不是会选择打上断点,一次一次中断,来查看呢?当然不用在循环体结束的位置我们设置一个断点,打开条件编辑窗口(打开方法同上),设置表达式为user,勾选下面的HasChanged,也就是说,你告诉断点,当user的值发生变化时才触发(注意:第一次执行到断点的时候,程序一定会中断,并计算这时表达式的值,所以,所谓发生变化,指的是以后执行到断点是表达式的值和第一次执行到断点时表达式的值的比较)问题4你希望你的断点在被命中100次后,每命中三次中断一次,比如第103,第106,第109怎样做?如何让断点在指定的命中次数或者大于某个次数时触发呢?方法是设定几个断点的HitCount,右键单击断点,在弹出菜单中选择Hit Count,会弹出如下窗口在"when the break point is hit"下拉列表里,我们可以看到四个选项break always:总是中断break when the hit count is equal to:等于某次数时中断beak when the hit count is a multpile of:当次数是某数的倍数时中断break when the hit count is greater than or equal to:当大于等于某数时中断问题5你有在调试一个服务程序,希望在其内部打上了断点,可是,由于这是一个公用的服务你不希望其他访问这个服务的程序被你的调试所干扰,你想怎么办?前面4个问题都已经解决了,第5个问题的解决方法是利用断点的Filter功能,比如我希望断点只有被机器名为yizhu的机器访问才能触发,我可以这样设置当其他机器访问程序的时候,断点将不会触发,这样做的优点是通过设置机器名,我们可以让其他机器访问的时候感觉不到断点的存在,除此之外我们可以设置机器名,进程号,进程名,线程号,线程名作为filter,而且还可以把他们组合起来,比如我希望通过当机器yizhu的dllhost进程调用时才触发,那么问题就可以设置为MachineName="yizhu"&ProcessName="dllhost"问题6 怎样知道2个断点中断的时间间隔现在我们来解决第6个问题:在程序性能调试的时候,我们经常需要知道某段代码的执行效率,一般来说,我们可以在程序中加入时间点,通过时间点相减来取得时间间隔,这种方法有个显而易见的缺点就是需要修改程序,想要不修改程序,就需要借助一些工具,那么有没有什么方法可以声明式的插入时间点,并计算值呢?其实断点完全可以做到在给出方法前,我们来看看断点的另外一个设置项,When Hit,这个选项可以让我们在命中断点后做一些事情,包括输出一些内容,或者调用宏,比如输出一个程序中变量的值我们输出了变量user的值,下面Continue Execution表示程序不会中断,输出后继续执行,注意表达式需要用{}括起来,,其他的部分会被作为字符串输出。

VS2008远程调试

VS2008远程调试

*假设调试机IP 192.168.0.182 远程机IP 192.168.0.161*远程机为调试机分配权限,使调试机可以使用远程桌面登陆到远程机器上(这样调试起来方便)。

*调试机上安装visual studio .net 2003共享调试机上的Visual Studio上的远程调试目录(以我的机器为例)C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Packages\Debugger*远程机将上面的共享目录考贝到本地,比如:d:\\Debugger*调试机共享要调试的程序所在目录,比如:D:\important\cvsroot\dv-to-dvd\bin\debug*远程机将调试机上的目录影射为本地目录。

比如:Z:\\*远程机上以命令行形式执行D:\\Debugger\msvcmon.exe –tcpip –anyuser*调试机启动vc. 打开要调试的工程。

比如dvtodvd. 选择菜单project->properties选debuging->remote settingConnection :Remote via TCP/IP (Native only)Remote machine: 192.168.0.161Remote Command: z:\dvtodvd.exe*debug->start*就可以调试了。

1.首先将要调试的应用程序拷贝至远程机,选择拷贝路径如:D:/XXX/XXX/2.将本地工作上VS2008的安装目录下的调试监控工具msvsmon.exe拷贝到远程机上,如:X:/Program Files/Microsoft Visual Studio 9.0/Common7/IDE/Remote Debugger/下的x86文件夹整个拷贝到远程机上。

3.双击远程机上的msvsmon.exe,选择tools--->Options--->Authentication Mode--->No Authentication(native only)--->OK4.VS2008设置具体如下:调试机启动VS2008. 选择project->properties然后:Configuration Properties: Debugging.Remote Command: 远程机上需要被调试的应用程序的全路径,比如:D:/XXX/XXX/urpro.exe。

Windows server 2008设置远程桌面连接的详细步骤(图文教程)

Windows server 2008设置远程桌面连接的详细步骤(图文教程)

Windows server 2008设置远程桌面连接的详细步骤(图文教程)1.强迫远程桌面连接用户执行网络级身份验证开始---程序—管理工具—服务器管理器---服务器管理---服务器摘要---配置远程桌面—--三个选项,如图:------选择用户--将该设置窗口中已经存在的用户账号一一选中,并单击“删除”按钮;之后,再单击“添加”按钮,在其后出现的用户账号浏览对话框中,找到有远程管理需求的特定用户账号,并将该账号选中添加进来,再单击“确定”按钮退出设置操作,这样的话任何一位普通用户日后都不能使用远程桌面功能来对Windows Server 2008服务器系统进行远程管理了,而只有在这里设置的特定用户才有权限通过远程桌面连接访问目标服务器系统。

2.禁止administrator使用远程桌面在缺省状态下,Windows Server 2008服务器系统允许administrator账号使用远程桌面功能,为了防止非法攻击者尝试使用该用户账号来攻击本地服务器系统,我们可以按照下面的操作来禁止administrator账号通过远程桌面连接来访问Windows Server 2008服务器系统(1)将administrator账号强行禁用:开始—程序—附件—“命令提示符”右键---以管理员身份运行---输入命令:net user administrator/active:no此方法往往会影响网络管理员正常管理服务器系统。

(2)通过为administrator账号更名的方式,来禁止administrator使用Windows Server 2008系统的远程桌面连接:开始—运行:gpedit.msc---计算机配置--- Windows设置--安全设置---本地策略---安全选项---帐户:重命名系统管理员3.将administrator账号的终端登录权限取消的方法,来达到禁止administrator使用远程桌面功能的目的;在取消administrator账号的终端登录权限时,我们可以先按前面操作打开服务器系统的组策略编辑控制台窗口:“计算机配置”---“Windows设置”---“安全设置”---“本地策略”---“用户权限分配”----“用户权限分配”-----“通过终端服务允许登录”,在其后弹出的窗口中将administrators 账号删除掉4.只许特定计算机使用远程桌面有的时候,为了防止局域网中的计算机病毒随意通过远程桌面连接传染给Windows Server 2008服务器系统,我们需要限定任何用户只能从局域网中特定的安全计算机上使用远程桌面功能,来远程控制目标服务器系统。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

拷贝到目标机应用程序所在的目录下,然后运行msvsmon.exe
2. 选择【Tools】->【Options】设置Debugger参数
这两步后目标机上的设置就完成了,下面介绍调试机上的设置:
调试机:
1. 打开VS2008,打开启动工程属性,在Debugging选项页内,做如下设置
注意:Remote Command 中的路径为目标机上可执行工程的路径;Remote Server Name 为目标机的IP地址
设置完成后按F5即可远程调试目标机程序。

需要注意的几个地方:
1. 调试机和被调试机都在一个局域网内,且必须在一个网段
2. 调试机和被调试机必须登录相同的用户,用户名必须一直关闭防火墙或打开相应的端口,一般是4015
3. 最重要的一点,这样设置后有可能会出现在调试机上无法设置断点的情况,提示PDB文件不匹配的问题,我就遇到了这个问题,找了好长时间才解决,我的解决方法是在调试机上编译好应用程序后,然后拷贝到目标机上(确保PDB文件一致),并且在你每次在调试机上重新编译了某些库后必须手动拷贝其DLL和PDB文件到目标机上,然后在Remote Command中设置目标机上的路径即可。

关于这一条可能还有其他的解决办法,但我没找到,希望有其他的解决方法的朋友留言。

环境:
同一局域网内,主机和虚拟机远程调试
远程计算机:虚拟机搭的WindowsXP/32(局域网中使用桥接,非局域网使用NAT)
本地计算机:Windows XP、Win7
1.本机计算机要求:VS2008 IDE 打开被调试代码
2.本机计算机登陆的用户名和密码,必须和远程计算机的登录名和密码相同,仅仅用户名相同,密码不同也是不可以的,会报错。

(也可以不设相同用户名和密码,貌似只有VC++下可以,在远程调试器选项里设置无验证模式,相应的在项目属性的调试页里设置,见下面调试方案1中VC++的"无验证模式"调试;)
3.远程计算机安装远程调试器:Remote Debugger,可以直接复制VS2008安装目录C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger 下的X86目录,(X64对应64位机);
4.对于本地和远程计算机都要保证DCOM分布式服务是打开的,可以通过控制面板->服务中打开
5.关于本地安全策略:
开始->程序->管理工具->本地安全策略,安全设置->安全选项->网络访问:本地帐户的共享和安全模式,在Windows XP中本地帐户的共享和安全模式中默认为“仅来宾-本地用户以来宾身份验证”,需改为:经典->本地用户以自己的身份验证",否则可能碰到“VS IDE attach远程进程时报告用户名和密码不匹配的错误”.
6.将本地计算机上要调试程序的debug目录中生成的文件拷贝到远程机子的共享目录中(最好直接把生成目录定位到远程的共享目录,省的每次改动后重新拷贝,如图);
调试方案:
(1)开发环境直接启动远程进程形式
①C#、
项目属性--调试,如图设置,在本地VS IDE上按F5即可调试远程机器上的执行文件:
②VC++
Windows验证模式调试:项目属性--调试,如图设置,在本地VS IDE上按F5即可调试远程机器上的执行文件:
无验证模式:项目属性--调试,如图设置,在本地VS IDE上按F5即可调试远程机器上的执行文件:
(调试页面只要修改"连接"这一项即可,注意,不能忘了把远程调试器修改为不验证)
(2)附加进程形式(C#和VC++应该一样)
①运行VS远程调试监视器msvsmon.exe,记住图中的liu@WINXP32,格式是"登录用户名@计算机名",同时在远程机器运行要调试的目标程序,如图:
②VS程序中,调试--附加到进程,点击浏览,选中远程机器,然后在下面的进程列表中,选中需要附加调试的进程,如图:。

相关文档
最新文档