VB中的DriveInfo无法在某些计算机上运行

时间:2018-02-08 13:13:27

标签: vb.net

我创建了一个程序,使用下面的代码检查Windows服务器的C驱动器空间利用率(我在https://msdn.microsoft.com/en-us/library/system.io.driveinfo.availablefreespace(v=vs.110).aspx上找到了这个方法)

它在某些Windows服务器上运行得很好,但在其他Windows服务器上却无法正常工作。我没有遇到任何异常错误,exe只是关闭。尝试以管理员身份运行。如果有其他方法可以帮助你吗?或者我需要修改的Windows配置?

以下是可见性摘要

Imports System
Imports System.IO

Class Test
    Public Shared Sub Main()
        Dim allDrives() As DriveInfo = DriveInfo.GetDrives()

        Dim d As DriveInfo
        For Each d In allDrives
            Console.WriteLine("Drive {0}", d.Name)
            Console.WriteLine("  Drive type: {0}", d.DriveType)
            If d.IsReady = True Then
                Console.WriteLine("  Volume label: {0}", d.VolumeLabel)
                Console.WriteLine("  File system: {0}", d.DriveFormat)
                Console.WriteLine( _
                    "  Available space to current user:{0, 15} bytes", _
                    d.AvailableFreeSpace)

                Console.WriteLine( _
                    "  Total available space:          {0, 15} bytes", _
                    d.TotalFreeSpace)

                Console.WriteLine( _
                    "  Total size of drive:            {0, 15} bytes ", _
                    d.TotalSize)
            End If
        Next
    End Sub
End Class

1 个答案:

答案 0 :(得分:0)

如果您所处的企业环境中实施的组策略没有安装,我遇到了这种确切的行为。你被阻止在计算机上停止特定的操作类型(一些exe,一些msi等)。

我记得的解决方案是你不能从该计算机启动exe,它必须从外部源运行。即将.exe保留在服务器上,但让它检查本地,并将任何本地资源需要放在临时位置。

对不起,我没有更多详细信息,但距离我申请该应用程序已有6年了。

希望有所帮助。