none
腾讯TT浏览器导致VS2008无法启动asp.net类程序的调试 RRS feed

  • 问题

  • 安装QQ之后,TT被自动安装。之后卸载TT,就发现VS2008无法启动asp.net的调试了。情况是报告“无法启动程序: http://localhost/.../test.aspx” 数据无效”。

    不仅如此,在很多程序里都无法通过点链接的方法启动IE了。

    如outlook 的邮件里的链接,google earth中的panamio照片中的链接,silverlight程序的调试等等。

    但不是所有的程序里的链接都无法打开。很多程序是正常的。

    我猜是TT把HTML,HTTP协议的有关绑定程序的信息修改了的原因,在卸载TT时没有清理干净,导致了某些启动链接的系统功能的调用时,出现参数错误或功能失效的问题。

    我安装了一个干净的系统,又安装了VS2008,来对比有关的注册表项,但是没有找到问题所在。

    我试着修复了VS2008,重新安装sp1, 安装ie8来尝试解决问题,但都失败了。


    这里有人能解决吗?


    重现问题的方法很简单:装个QQ,QQ会自动给你装TT,然后卸载TT和QQ,然后,你的VS2008就不能启动ASP.net的调试了。

    腾讯还没有答复。

    我骂个人行不?

    NND 腾讯,搞的什么破烂玩意儿!

    HAL
    2009年3月30日 9:32

答案

  • VS2008无法启动asp.net提示“无法启动程序: http://localhost/.../test.aspx” 数据无效”。
    2009-08-11 17:55

       今天下午突然VS2008不能启动任何WEB程序了,提示:“无法启动程序: http://localhost/.../test.aspx” 数据无效”,早上都还正常,怎么下午就不行了,通过右下角的状态栏中虚拟服务器的图标可以访问调试的页面,回想下做过什么操作,早上设置过默认浏览器(本机装有多个浏览器),猜测应该是VS2008找不到浏览器启动程序,重新设置默认浏览器,用360修复IE设置都没有用,上网查找有没有人碰到同样问题。找到一篇提示 “无法启动程序 http://…… 系统找不到指定的文件”的文章,照着手动修改注册表,问题解决,确实是VS2008不能找到浏览器来启动程序。

    修改注册表,如果该节点位置没有该注册表项就手动添加一个吧,内容如下

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\iexplore.exe]
    @=”C:\\Program Files\\Internet Explorer\\iexplore.exe


    这个方法是可行的,贴过来让后人看到.原文:
    http://hi.baidu.com/stockzh/blog/item/0ceff1a74af3629cd04358f1.html

    没想到这个问题在英文论坛死活都不到,还是翻译成中文google到的...
    2010年1月27日 1:17

全部回复

  • 用hijackthis看看。
    MSMVP VC++
    2009年3月30日 15:36
    版主
  • 用hijackthis看看。
    MSMVP VC++

    这个东西没有什么用。我下载了试了,它什么也不会修复,只会检查我的主页啦,启动程序项什么的。我试着选择修复一个项目,结果它就只是帮我删除了。

    而且在运行过程中,当我查看进程表时,360报这个程序试图注入我的TM.exe。不知道是什么意思。有可能是360保险箱对TM进行了防护,不许别的进程查看引起的。

    不说这个了,还是回来讲如何修复VS2008吧!

    我认为,VS2008在启动asp.net程序的调试时,采用了某种打开http网址的方法, 如DDE命令?WINAPI中的SHExecute()? Process.Start()? CreateProcess()? 这些启用项依赖于注册表中对文件类型、协议之类的项目的处理方式的定义,有可能会还采用一些特殊的参数来启动调试,但是TT把注册表里的有关项目搞坏了,就导致了某种启动IE进程的方法失败了。

    如果谁知道VS2008在启动调试时,用的是什么方法就好了。可以更有针对性地分析。

    HAL
    2009年3月31日 2:11
  • 你用的是IE8?
    MSMVP VC++
    2009年3月31日 2:30
    版主
  • 你用的是IE8?
    MSMVP VC++

    一开始是vista + ie7, 刚刚安装的OS,后来因为这个问题没办法了,只好试装了IE8,希望它会在安装中帮我把错误的注册表项修复,但是最后没有效果。
    HAL
    2009年3月31日 3:26
  • Visual Studio的调试器不支持IE8的LCIE。你需要把LCIE关掉
    MSMVP VC++
    2009年3月31日 4:14
    版主
  • 好像没用。


    HAL
    2009年3月31日 6:14
  • 重新检查一下iis配置:
    http://msdn.microsoft.com/zh-cn/library/ms165023.aspx
    周雪峰
    2009年3月31日 7:56
    版主
  • 重新检查一下iis配置:
    http://msdn.microsoft.com/zh-cn/library/ms165023.aspx
    周雪峰

    IIS是没有问题的。即使我不能调试,也可以按ctrl + F5启动浏览,程序运行功能很正确。

    在silverlight调试时,我并没有创建web应用程序,只是在启动调试时,VS试图启动一个html文件而已。这时的报错是:
    无法启动:file:///c:/user/......./silverlighttest.html" 数据无效。

    因此,我还是认为这和IIS没有关系,就是VS的不知道如何启动html和httpfile了。

    我试过几种编程的方法来启动一个页面,都没有问题,IE欢快地跳出来了。但是VS就是不行。

    我试过的方法有:
    System.Diagnostics.Process.Start("http://www.google.com/index.html");
    IntPtr intptr = ShellExecute(IntPtr.Zero,
                    "open",
                    "http://www.google.com/index.html",
                    "",
                    "",
                    ShowCommands.SW_SHOWNOACTIVATE);
    Process.Start("C:\\Program Files\\Internet Explorer\\IExplore.exe", "http://www.google.com");

    还没有试过CreateProcess, 不过估计应该是可以的。

    各位还有没有其他思路?

    我真不想重装系统了。

    HAL
    2009年3月31日 9:01
  • 您在调试的时候,右下角的状态栏中有没有一个虚拟服务器的图标, VS 在调试 ASP.net 程序的时候,会自动启动虚拟服务,然后在本地的打开一个端口,然后 IE 通过访问本地的这个端口来访问页面。
    周雪峰
    2009年3月31日 9:17
    版主
  • 您在调试的时候,右下角的状态栏中有没有一个虚拟服务器的图标, VS 在调试 ASP.net 程序的时候,会自动启动虚拟服务,然后在本地的打开一个端口,然后 IE 通过访问本地的这个端口来访问页面。
    周雪峰

    有的。

    我把应用设置在VS服务器里跑,设在IIS里跑,创建应用程序,都没有问题,服务器都能正常运行。但是就是无法启动调试。

    其实应用是正常的,服务器也是正常的。我可以手动打开一个IE窗口去浏览这个网址,应用程序跑得很好。但是就是无法用f5启动调试,点绿色的三角启动按钮也不行。

    当我按下调试时,VS会进入调试状态,窗口的布局都已经变了,准备调试了,正常情况下是打开一个IE窗口,开始调用页面就好了,但是,这时就出现上述的那个错误。

    HAL
    2009年3月31日 12:35
  • 检查hosts文件里面是否有
    127.0.0.1       localhost
    ::1                localhost
    孟宪会
    2009年3月31日 12:40
    版主
  • 27.0.0.1       localhost
    ::1             localhost

    有的。这个应该是有的吧!这个是v4和v6的loopback地址吧!
    HAL
    2009年3月31日 12:43
  • hal9000plus
    我也遇到了同样的问题,改Host文件都不好使。我是通过在TT选项中调整默认浏览器设置,将其调整为默认为TT打开,然后再到项目工程中将“浏览方式”默认设置为IE8,就可以了。

    xpeter
    2009年11月26日 13:01
  • VS2008无法启动asp.net提示“无法启动程序: http://localhost/.../test.aspx” 数据无效”。
    2009-08-11 17:55

       今天下午突然VS2008不能启动任何WEB程序了,提示:“无法启动程序: http://localhost/.../test.aspx” 数据无效”,早上都还正常,怎么下午就不行了,通过右下角的状态栏中虚拟服务器的图标可以访问调试的页面,回想下做过什么操作,早上设置过默认浏览器(本机装有多个浏览器),猜测应该是VS2008找不到浏览器启动程序,重新设置默认浏览器,用360修复IE设置都没有用,上网查找有没有人碰到同样问题。找到一篇提示 “无法启动程序 http://…… 系统找不到指定的文件”的文章,照着手动修改注册表,问题解决,确实是VS2008不能找到浏览器来启动程序。

    修改注册表,如果该节点位置没有该注册表项就手动添加一个吧,内容如下

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\iexplore.exe]
    @=”C:\\Program Files\\Internet Explorer\\iexplore.exe


    这个方法是可行的,贴过来让后人看到.原文:
    http://hi.baidu.com/stockzh/blog/item/0ceff1a74af3629cd04358f1.html

    没想到这个问题在英文论坛死活都不到,还是翻译成中文google到的...
    2010年1月27日 1:17
  • VS2008无法启动asp.net提示“无法启动程序: http://localhost/.../test.aspx” 数据无效”。
    2009-08-11 17:55

       今天下午突然VS2008不能启动任何WEB程序了,提示:“无法启动程序: http://localhost/.../test.aspx” 数据无效”,早上都还正常,怎么下午就不行了,通过右下角的状态栏中虚拟服务器的图标可以访问调试的页面,回想下做过什么操作,早上设置过默认浏览器(本机装有多个浏览器),猜测应该是VS2008找不到浏览器启动程序,重新设置默认浏览器,用360修复IE设置都没有用,上网查找有没有人碰到同样问题。找到一篇提示 “无法启动程序 http://…… 系统找不到指定的文件”的文章,照着手动修改注册表,问题解决,确实是VS2008不能找到浏览器来启动程序。

    修改注册表,如果该节点位置没有该注册表项就手动添加一个吧,内容如下

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\iexplore.exe]
    @=”C:\\Program Files\\Internet Explorer\\iexplore.exe


    这个方法是可行的,贴过来让后人看到.原文:
    http://hi.baidu.com/stockzh/blog/item/0ceff1a74af3629cd04358f1.html

    没想到这个问题在英文论坛死活都不到,还是翻译成中文google到的...

    这个办法非常靠谱。

    历时1年,09年3月创建的这个问题,10年3月,终于有答案了。泪奔ing~~
    HAL
    2010年3月8日 2:01