Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何授予程序访问权限以搜索整个驱动器(C&D)以查看某个文件是否存在?[VB.NET]_Vb.net_File_Search - Fatal编程技术网

如何授予程序访问权限以搜索整个驱动器(C&D)以查看某个文件是否存在?[VB.NET]

如何授予程序访问权限以搜索整个驱动器(C&D)以查看某个文件是否存在?[VB.NET],vb.net,file,search,Vb.net,File,Search,以下是我的完整概念: 我希望能够搜索整个‪C:\&D:\要查看驱动器上是否存在某个文件,而不是编辑/删除/创建,我只想知道它是否存在 示例: 我希望能够扫描整个D:\以查看驱动器上是否存在“Testing321.exe”。我遇到的问题是,我能够扫描类似“C:\Users\Dan\Desktop”的内容,但我无法扫描“C:”,因为我遇到了一个与权限不足相关的错误,即使我在清单中为程序授予了完全管理员权限 错误: Dim Path As String Console.Writ

以下是我的完整概念: 我希望能够搜索整个‪C:\&D:\要查看驱动器上是否存在某个文件,而不是编辑/删除/创建,我只想知道它是否存在

示例: 我希望能够扫描整个D:\以查看驱动器上是否存在“Testing321.exe”。我遇到的问题是,我能够扫描类似“C:\Users\Dan\Desktop”的内容,但我无法扫描“C:”,因为我遇到了一个与权限不足相关的错误,即使我在清单中为程序授予了完全管理员权限

错误:

Dim Path As String
            Console.WriteLine("Enter Directory to search [Phantom DLL]: ")
            Path = Console.ReadLine()

            Dim FolderPath = Path
            For Each filePath In Directory.GetFiles(FolderPath,
                                            "RXEXV2.dll",
                                            SearchOption.AllDirectories)

                If filePath IsNot Nothing Then
                    Console.WriteLine("DETECTED: Phantom Menu DLL Found: " & filePath)
                Else
                    Console.WriteLine("Nothing Detected")
                End If
未处理的异常。System.UnauthorizedAccessException:访问 路径“C:\Documents and Settings”被拒绝。在 System.IO.Enumeration.FileSystemumerator
1.CreateRelativeDirectoryHandle(ReadOnlySpan
1 相对路径,字符串完整路径) System.Collections.Generic.LargearyBuilder中的System.IO.Enumeration.FileSystemumerator
1.MoveNext()
1.AddRange(IEnumerable
1项)位于System.Collections.Generic.EnumerableHelpers.ToArray[T](IEnumerable
1 source)位于System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)位于System.IO.Directory.GetFiles(字符串路径,字符串 searchPattern,SearchOption(搜索选项)位于 中的Alpha.Program.Main(字符串[]args) C:\AlphaSS\Alpha\Alpha\Program.vb:第80行

代码:

Dim Path As String
            Console.WriteLine("Enter Directory to search [Phantom DLL]: ")
            Path = Console.ReadLine()

            Dim FolderPath = Path
            For Each filePath In Directory.GetFiles(FolderPath,
                                            "RXEXV2.dll",
                                            SearchOption.AllDirectories)

                If filePath IsNot Nothing Then
                    Console.WriteLine("DETECTED: Phantom Menu DLL Found: " & filePath)
                Else
                    Console.WriteLine("Nothing Detected")
                End If
上面的代码基本上是我想到的一个想法,它将扫描玩家的计算机以查找某些(作弊)文件,如果找到这些文件,它将输出回控制台


如果有人能解决这个问题,请告诉我

如果您可以将.NET标准2.1作为目标(意味着您的.NET实现是.NET Core 3.0或更高版本,而不是只实现.NET标准2.0的.NET Framework 4.8),那么您可以使用。有关信息,请参阅。不幸的是,即使您的应用程序具有管理员权限,也始终存在无法访问的文件/目录。您必须处理UnauthorizedAccessException。如果搜索StackOverflow,您可以通过递归尝试找到此问题的其他答案。但是,由于我使用的不是同一种语言,我将如何在代码中实现这一点。在文档页面的右上角(在“书签”旁边),有一种方法可以在两种语言之间切换,因此,您可以在VB中显示相同的示例代码。真正的问题是,您的项目是否可以以.NET标准2.1为目标,还是以.NET Framework为目标。如果你不能将.NET标准2.1作为目标,那么上面链接中的选项将不会有任何帮助。老实说,所有这些都直接超出了我的想象。我只有VB.NET的基本知识。我不敢相信搜索一个驱动器会如此困难(这只是我的问题),如果你能以.NET标准2.1为目标(这意味着你的.NET实现是.NET Core 3.0或更高版本,而不是只实现.NET标准2.0的.NET Framework 4.8),那么你可以使用。有关信息,请参阅。不幸的是,即使您的应用程序具有管理员权限,也始终存在无法访问的文件/目录。您必须处理UnauthorizedAccessException。如果搜索StackOverflow,您可以通过递归尝试找到此问题的其他答案。但是,由于我使用的不是同一种语言,我将如何在代码中实现这一点。在文档页面的右上角(在“书签”旁边),有一种方法可以在两种语言之间切换,因此,您可以在VB中显示相同的示例代码。真正的问题是,您的项目是否可以以.NET标准2.1为目标,还是以.NET Framework为目标。如果你不能将.NET标准2.1作为目标,那么上面链接中的选项将不会有任何帮助。老实说,所有这些都直接超出了我的想象。我只有VB.NET的基本知识。我不敢相信搜索一个驱动器这么难(问题就在我身上)