首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Visual突破

Visual突破
EN

Stack Overflow用户
提问于 2014-01-20 21:49:31
回答 1查看 139关注 0票数 0

我在Visual中有一个函数

当发现事件时,我希望能够从IF语句中分离出来。

代码语言:javascript
复制
Private Sub GetAllPrograms2()
    ListBox4.Items.Clear()
    Dim moReturn As Management.ManagementObjectCollection
    Dim moSearch As Management.ManagementObjectSearcher
    Dim mo As Management.ManagementObject
    Dim r As New Regex("(\bJava\S*|\bARR\S*|\bMicrosoft SQL Server 2\S*|\bMySQL\S*|\bPHP\S*|\bWeb C\S*|\bSmarter\S*)")
    moSearch = New Management.ManagementObjectSearcher("Select * from Win32_Product")
    moReturn = moSearch.Get
    For Each mo In moReturn
        If r.IsMatch(mo("Name").ToString) Then
            ListBox4.Items.Add(mo("Name").ToString)
        End If
        Dim s As New Regex("(\bSQL Server 2\S*)")
        If s.IsMatch(mo("Name").ToString) Then
            If mo("Name").ToString = "Microsoft SQL Server 2012" Then
                RichTextBox1.Text += "Microsoft SQL 2012 was found" + vbCrLf
            ElseIf mo("Name").ToString = "Microsoft SQL Server 2008" Then
                RichTextBox1.Text += "Microsoft SQL 2008 was found" + vbCrLf
            ElseIf mo("Name").ToString = "Microsoft SQL Server 2005" Then
                RichTextBox1.Text += "Microsoft SQL 2005 was found" + vbCrLf
            ElseIf mo("Name").ToString = "Microsoft SQL Server 2000" Then
                RichTextBox1.Text += "Microsoft SQL 2000 was found" + vbCrLf
            End If
        End If       
    Next
End Sub

因此,代码所做的是查找“2”的每个实例,它也在查找其他项,但我只关心“2”。

当发现出现"Microsoft 2“时,if将进入另一个IF语句并查找Microsoft 2000、Microsoft 2005、Microsoft 2008或Microsoft 2012

它将输出到一个丰富的文本框中的任何一个,以供我试图构建的报表。

代码执行得很好。但是,当它找到多个程序名称时(有时使用SQL,可能会出现10到20个)。它输出多行,就像罚款一样多。

例如,它将发现:

“2012数据库引擎共享”“2012公共文件”等

,它将输出多行

Microsoft SQL 2012被发现,Microsoft SQL 2012被找到等

我希望它能找到一个,然后继续前进。

我试过使用for循环<1,但是由于某些原因,我无法得到正确的结果。

任何能在这方面帮助我的人都会很棒。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-20 21:55:23

如果可能的话--将其限制在原始源中(例如,在SQL中,只返回一个条目-蛮力SELECT TOP 1 )。如果这不是一个选项,您可以通过VB.NET 出口为语句退出循环

代码语言:javascript
复制
IF sql found
    output some text
    Exit For
Exit
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21244840

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档