代码之家  ›  专栏  ›  技术社区  ›  Rob

确定运行Visual Studio Web应用程序的端口

  •  2
  • Rob  · 技术社区  · 17 年前

    我一直在使用来自的宏 this blog entry

    有没有办法确定Web项目中配置的端口,以便我可以修改宏以将其选择的进程过滤到该端口?


    进一步资料

    我知道您可以将端口号设置为静态端口号-我从一开始就这样做了,我想确定的是如何 程序化 确定定义的端口号,以便我可以修改宏(在链接的博客条目中),并确保它连接到Visual Studio web服务器的正确实例。

    3 回复  |  直到 17 年前
        1
  •  2
  •   Annagram    17 年前

    此代码将为您提供当前解决方案中项目的所有端口的列表:

    Sub GetWebProjectPorts()
        Dim ports As String
    
        For Each prj As Project In DTE.Solution.Projects
            For Each p As EnvDTE.Property In prj.Properties
                If p.Name.Contains("DevelopmentServerPort") Then
                    If Not String.IsNullOrEmpty(ports) Then
                        ports += ","
                    End If
                    ports += p.Value.ToString()
                End If
            Next
        Next
    
        MsgBox(ports)
    End Sub
    
        2
  •  0
  •   Maxime Rouiller    17 年前

    然而,它需要DllImport电话和很多乐趣。

    您可以在此处查看该文章: http://bytes.com/forum/thread574901.html

    来自实际站点的引用:

    通过使用 PInvoke互操作。谷歌搜索 GetExtendedTcpTable和IPHLAPI.dll,

    威利。

    最后一点:

    下面是我的一些API方法 目的:

    GetTcpTable()
    AllocateAndGetTcpExTableFromStack()
    GetExtendedTcpTable()

    向我显示具有 属于TCP端口(带有 AllocateAndGetTcpExTableFromStack()) 在Windows XP下运行。

    2000我不能用 使用GetTcpTable()列出所有 过程。

    还有别的方法吗(.Net或WMI 等)来解决我的问题?

    提前感谢,,

        3
  •  -1
  •   brock.holum    17 年前