Determine whether a program is 16- or 32-bit

Even if we’re living in a 32-bit world, and closer and closer to the 64-bit day, 16-bit programs are still running out there. Knowing whether a given EXE is 32-bit or not can be useful when you have to arrange version checking routine, for example to detect which version of a product is installed.

The Win32 SDK makes available a multi-use function called SHGetFileInfo() that serves the purpose. It is declared like this:

Type SHFILEINFO   hIcon As Long   iIcon As Long   dwAttributes As Long   szDisplayName As String * MAX_PATH   szTypeName As String * 80End TypePublic Const SHGFI_EXETYPE = &H2000Public Declare Function SHGetFileInfo Lib "shell32.dll" Alias "SHGetFileInfoA" _    ( ByVal pszPath As String, ByVal dwFileAttributes As Long, _    psfi As SHFILEINFO, ByVal cbFileInfo As Long, ByVal uFlags As Long ) As _    Long 

Its usage is:

dw = SHGetFileInfo(exename, 0, sfi, Len(sfi), SHGFI_EXETYPE)

The returned low word contains the signature of the executable. You must compare it against the following values:

Const WIN32_GUI = &H4550   ' PE, Win32Const WIN16_GUI = &H454E   ' NE, Win16Const WIN16_DOS = &H5A4D   ' MZ, MS-DOS

You can obtain the low word in this way:

dw = SHGetFileInfo(exename, 0, sfi, Len(sfi), SHGFI_EXETYPE)lowWord = dw And &H7FFF

This tip is taken from the book VisualC++ Windows Shell Programming by Dino Esposito.

Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Overview

The Latest

iOS app development

The Future of iOS App Development: Trends to Watch

When it launched in 2008, the Apple App Store only had 500 apps available. By the first quarter of 2022, the store had about 2.18 million iOS-exclusive apps. Average monthly app releases for the platform reached 34,000 in the first half of 2022, indicating rapid growth in iOS app development.

microsoft careers

Top Careers at Microsoft

Microsoft has gained its position as one of the top companies in the world, and Microsoft careers are flourishing. This multinational company is efficiently developing popular software and computers with other consumer electronics. It is a dream come true for so many people to acquire a high paid, high-prestige job

your company's audio

4 Areas of Your Company Where Your Audio Really Matters

Your company probably relies on audio more than you realize. Whether you’re creating a spoken text message to a colleague or giving a speech, you want your audio to shine. Otherwise, you could cause avoidable friction points and potentially hurt your brand reputation. For example, let’s say you create a