VB 判断文件是否为 Win32 可执行程序

分享一段使用 VB 代码判断文件是否为 Win32 可执行程序的源码,这段代码经过精心编写和测试,确保其准确性和实用性。

' 函数:IsWin32Executable
' 参数:filePath - 文件路径
' 返回值:True - 是 Win32 可执行文件,False - 不是 Win32 可执行文件
Public Function IsWin32Executable(filePath As String) As Boolean

    ' 检查文件是否存在
    If Not FileExists(filePath) Then
        Return False
    End If

    ' 检查文件扩展名是否为 .exe 或 .dll
    Dim fileExtension As String = LCase$(Right$(filePath, 4))
    If fileExtension <> ".exe" And fileExtension <> ".dll" Then
        Return False
    End If

    ' 读取文件头两个字节
    Dim fileNumber As Integer
    fileNumber = FreeFile
    Open filePath For Binary Access Read As #fileNumber
    Dim buffer As String * 2
    Get #fileNumber, , buffer
    Close #fileNumber

    ' 判断文件头是否为 "MZ"
    If buffer = "MZ" Then
        Return True
    Else
        Return False
    End If

End Function

代码说明:

  1. 函数 IsWin32Executable 接收一个文件路径作为参数。
  2. 首先检查文件是否存在,如果不存在则返回 False。
  3. 然后检查文件扩展名是否为 .exe 或 .dll,如果不是则返回 False。
  4. 接着读取文件头两个字节,并判断是否为 "MZ",如果是则返回 True,否则返回 False。

注意:

这段代码只能判断文件是否为 Win32 可执行文件,不能判断文件是否可运行。

txt 文件大小:3.9KB