VB.net无法识别网络文件路径

VB.net无法识别网络文件路径,vb.net,network-programming,Vb.net,Network Programming,问题:我有一个从手持录音机上传听写的用户。对接后,文件将从手持设备迁移到临时文件夹位置。从那里,计算机上的软件将文件上传到服务器。出现问题时,文件将挂起在临时位置 解决方案:最初尝试复制文件(如果使用robocopy存在),但是,重复的名称和命名约定限制迫使改变方法。我决定创建一个小程序来扫描域中所有PC上的文件目录。如果临时文件夹包含文件,则计算机名的输出将显示在列表框中。(我还没有设置一个只显示名称的解析,所以现在它显示完整的文件路径) 问题:我进行了错误检查,以验证文件路径是否存在,但是否

问题:我有一个从手持录音机上传听写的用户。对接后,文件将从手持设备迁移到临时文件夹位置。从那里,计算机上的软件将文件上传到服务器。出现问题时,文件将挂起在临时位置

解决方案:最初尝试复制文件(如果使用robocopy存在),但是,重复的名称和命名约定限制迫使改变方法。我决定创建一个小程序来扫描域中所有PC上的文件目录。如果临时文件夹包含文件,则计算机名的输出将显示在列表框中。(我还没有设置一个只显示名称的解析,所以现在它显示完整的文件路径)

问题:我进行了错误检查,以验证文件路径是否存在,但是否为空,是否存在并包含文件,最后是否不存在。问题是程序说每个文件目录“不存在”。我已经验证了路径确实存在,并且我可以从启动调试的同一台机器上对其进行UNC。我作为一个域管理员也做过测试。我还尝试过在文件路径上使用引号和不使用引号(文件路径中有空格)。“高”和“低”字段是要扫描的最低和最高资产标签信息(设置要扫描的资产范围)

代码(VB.Net 2010):


是否尝试调试If语句以检查目录并查看传递的值?这听起来像是一个简单的目录格式化问题。我也有同样的想法,所以我就试了一下。该程序本身将导出文件路径,我可以看到它所指向的文件路径。所以…我试图将UNC转换为直接输出,但没有成功。我将char(34)添加到文件路径的侧面,以便在引号中显示(文件路径中的空格)。我可以不带任何问题地引用UNC。因此,我非常确定所通过的路径是正确的。你有没有其他的测试建议?我很少做这件事,所以任何提示都将不胜感激!在If检查时strFolderPath支持什么?对于初学者,我知道这里不需要char(34)。其次,当该字符串中的任何内容点击My.Computer.FileSystem.DirectoryExists检查时,都应该可以直接复制/粘贴到资源管理器中并加载目录。如果它在那里失败了,它将在你的程序中失败。今天晚些时候拿起这个来测试。现在灭火。再次感谢你,基思!
Imports System.IO

Public Class Main

    Private Sub btnScan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnScan.Click
        Dim fs, oFolder
        Dim strFolderPath As String
        Dim count As Integer
        Dim low As Integer
        Dim high As Integer
        Dim company As String = "\\Company"
        Dim path As String = "\c$\Program Files\Speech Machines\SubSpace\temp"
        Dim countpath As String = ""
        lstNames.Items.Clear()
        low = CInt(txtLow.Text)
        high = CInt(txtHigh.Text)
        For count = low To high
            countpath = count.ToString
            fs = CreateObject("Scripting.FileSystemObject")
            strFolderPath = (Chr(34) + oah + countpath + path + Chr(34))
            If My.Computer.FileSystem.DirectoryExists(strFolderPath) Then
                oFolder = fs.GetFolder(strFolderPath)
                If (oFolder.files.count = 0) Then
                    'folder is Empty
                    lstNames.Items.Add(oah + countpath + " " + "Empty")
                Else
                    ' folder isn't empty
                    lstNames.Items.Add(oah + countpath + " " + "Files Contained: " & oFolder.files.count)
                End If
                fs = Nothing
            Else
                'folder does not exist
                lstNames.Items.Add(strFolderPath + " " + "Does not exist")
            End If
        Next
        'completion message
        MessageBox.Show("Scanning Complete")
    End Sub

    Private Sub SaveListToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveListToolStripMenuItem.Click
        Dim sfd As New SaveFileDialog
        'Prompt the user for a file name to save to.
        If sfd.ShowDialog() = DialogResult.OK Then
            'Create the file to save to.
            Dim output As New IO.StreamWriter(sfd.FileName)
            'Write lines of text to the file.
            For Each item As Object In lstNames.Items
                output.WriteLine(lstNames.GetItemText(item))
            Next item
            'Close the file.
            output.Close()
        End If
    End Sub

End Class