相同的VB。网络代码,Windows 7和Windows 10之间的结果不同 [英] Same VB. Net code, different result between windows 7 and windows 10

查看:92
本文介绍了相同的VB。网络代码,Windows 7和Windows 10之间的结果不同的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

亲爱的朋友们,



部分代码在Windows 7下运行正常,现在Windows 10无法运行......

代码计数外部硬盘驱动器中的文件和文件夹,同一设备用于测试...



公共ND,NFiles为整数



尝试

NDirs = My.Computer.FileSystem.GetDirectories(My.Settings.BackupDrive,*,
SearchOption .AllDirectories).Count

NFiles = My.Computer.FileSystem.GetFiles(My.Settings.BackupDrive,*。*,
SearchOption.AllDirectories).Count


Catch ex As Exception


最后
MsgBox(Total Files:& NFiles.ToString&/ Folders:& NDirs .ToString)

结束尝试



我不确定是关于.Net框架(Proyect上的4.0)还是别的东西,试试看许多选项,但不起作用...



在Win7上获取正确的文件夹麻木在Win10上只有0/0。



我在网站上看了一些帖子,其中说GetDirectories / Files不是一个很好的选择而且很慢,所以可以给我一些更好的方法吗? br />


提前谢谢。



我尝试过:



我也尝试使用Directory.GetDirectories并在最后使用了像.Count,.LongCount,.Lenght这样的版本,并且在Windows 10下不起作用

解决方案

Windows 10比Windows 7更严格;您需要以管理员身份运行应用程序才能访问外部驱动器。


首先尝试使用DirectoryInfo类设置搜索目录,然后像这样调用方法:



  Dim  startDir  As   DirectoryInfo(My.Settings.BackupDrive)

如果 startDir。存在然后
NDirs = startDir.GetDirectories( *,SearchOption.AllDirectories).Count
NFiles = startDir.GetFiles( * ,SearchOption.AllDirectories)。计数
结束 如果


Dear friends,

Part of my code always work fine under Windows 7, now with Windows 10 not works...
The code count Files and Folders inside a External Hard Drive, the same device is used for testing...

Public NDirs, NFiles As Integer



  Try

   NDirs = My.Computer.FileSystem.GetDirectories(My.Settings.BackupDrive, "*", 
   SearchOption.AllDirectories).Count
            
   NFiles = My.Computer.FileSystem.GetFiles(My.Settings.BackupDrive, "*.*", 
   SearchOption.AllDirectories).Count


  Catch ex As Exception


  Finally
    MsgBox("Total Files: " & NFiles.ToString & " / Folders: " & NDirs.ToString)

  End Try


I am not sure is something about the .Net Frameworks (4.0 on Proyect) or something else, just try many options and dont works...

On Win7 get the correct files folder numbers, on Win10 just 0/0.

I read some post in the site, where said about GetDirectories /Files not is a good option and very slow, so can give me some orientation for better way?

Thank you in advance.

What I have tried:

Also I try with Directory.GetDirectories and used convinations at the end like .Count, .LongCount, .Lenght and dont works under Windows 10

解决方案

Windows 10 is stricter than Windows 7; you will need to run your application as administrator to access an external drive.


Try using the DirectoryInfo class to set your search directory first, then call the methods on it like this:

Dim startDir As New DirectoryInfo(My.Settings.BackupDrive)

If startDir.Exists Then
      NDirs = startDir.GetDirectories("*", SearchOption.AllDirectories).Count
      NFiles = startDir.GetFiles("*", SearchOption.AllDirectories).Count
End If


这篇关于相同的VB。网络代码,Windows 7和Windows 10之间的结果不同的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆