Subscribe: Using Win32 (WinAPI) Functions in Microsoft Visual FoxPro
Added By: Feedage Forager Feedage Grade B rated
Language: English
api function  api  code sample  code  control  foxpro  function  input  sample  user  vfp  visual foxpro  visual  windows 
Rate this Feed
Rate this feedRate this feedRate this feedRate this feedRate this feed
Rate this feed 1 starRate this feed 2 starRate this feed 3 starRate this feed 4 starRate this feed 5 star

Comments (0)

Feed Details and Statistics Feed Statistics
Preview: Using Win32 (WinAPI) Functions in Microsoft Visual FoxPro

Using Win32 (WinAPI) Functions in Microsoft Visual FoxPro

Add Microsoft Win32 functionality to your Visual FoxPro applications! This web site presents declarations and FoxPro code samples for more than 1,200 Windows API functions.

Published: Tue, 31 Mar 2015 13:02:19 EST

Last Build Date: Tue, 31 Mar 2015 12:59:58 EST

Copyright: 1361529 Ontario, Inc.

Code sample: How to load a user profile

Tue, 31 Mar 2015 12:59:58 EST

Shows how to load user profile data by calling LoadUserProfile Win32 function.

Excel DbfMate added to Softpedia

Thu, 12 Mar 2015 09:04:05 EST

Excel DbfMate is a reliable Microsoft Excel add-in that facilitates the information transfer between the selected spreadsheets and FoxPro databases.

The tool is easy to use permits both exporting the data from Excel and importing it from a DBF file. It integrates with the Excel context menu, for convenient usage.

API function: LoadUserProfile

Thu, 12 Mar 2015 09:03:02 EST

Loads the specified user"s profile. The profile can be a local user profile or a roaming user profile.

API function: UnloadUserProfile

Thu, 12 Mar 2015 09:02:42 EST

Unloads a user"s profile that was loaded by the LoadUserProfile function.

Subscription to advanced content

Sun, 01 Mar 2015 00:00:00 EST

Get 3, 6, or 12 months subscription to access advanced code samples and features.

Excel DbfMate add-in now supports long field names, Memo fields

Fri, 27 Feb 2015 09:21:18 EST

When importing data from a table in a database, the add-in now retrieves field names not from the table's header but from records if the .dbc file.

Importing and exporting routines both now can operate with Memo fields in VFP tables.


Code sample: Monitoring clipboard content changes (VFP9)

Tue, 27 Jan 2015 10:25:11 EST

After adding VFP form to the clipboard format listening list, it is receiving a WM_CLIPBOARDUPDATE message whenever the contents of the clipboard have changed.


API function: RemoveClipboardFormatListener

Tue, 27 Jan 2015 10:15:26 EST

Removes the given window from the system-maintained clipboard format listener list.

API function: AddClipboardFormatListener

Tue, 27 Jan 2015 10:15:03 EST

Places the given window in the system-maintained clipboard format listener list.

API function: SetProcessPreferredUILanguages

Fri, 23 Jan 2015 19:12:31 EST

Sets the process preferred UI languages for the application process.

API function: GetProcessPreferredUILanguages

Fri, 23 Jan 2015 19:10:49 EST

Retrieves the process preferred UI languages.

Code sample: Analyzing character types in a specified string

Wed, 31 Dec 2014 09:26:27 EST

Usage example for GetSringTypeEx

API function: GetStringTypeEx

Wed, 31 Dec 2014 09:21:34 EST

Retrieves character type information for the characters in the specified source string. For each character in the string, the function sets one or more bits in the corresponding 16-bit element of the output array. Each bit identifies a given character type, for example, letter, digit, or neither.

API function: CompareString

Tue, 30 Dec 2014 11:46:10 EST

Compares two character strings, for a locale specified by identifier.

API function: GetUserGeoID

Tue, 30 Dec 2014 11:14:02 EST

Retrieves information about the geographical location of the user.

Solution: Excel DbfMate Add-In

Sun, 12 Oct 2014 09:58:06 EST

Enables Excel users to export data from Excel worksheet to a DBF file (the whole worksheet or a rectangular area) as well as import data from a DBF file to a designated area in a worksheet.

Supported Excel versions: 2007 to 2013. Supported DBF versions: dBase III Plus, Visual FoxPro. The add-in does not require any ODBC or OLEDB drivers to be installed on the computer.

(image) (image)

API function: GetDateFormat

Sun, 28 Sep 2014 11:23:05 EST

Formats a date as a date string for a locale specified by the locale identifier. The function formats either a specified date or the local system date.

API function: GetNumberFormat

Sun, 28 Sep 2014 11:18:43 EST

Formats a number string as a number string customized for a locale specified by identifier.

API function: GetCurrencyFormat

Sun, 28 Sep 2014 11:18:22 EST

Formats a number string as a currency string for a locale specified by identifier.

Exporting Excel worksheets to DBF files

Tue, 08 Jul 2014 15:05:56 EST

Excel Add-In development is under way. With this add-in any rectangular range on Excel worksheet can be exported to DBF file. No data provider (ODBC, OLE DB, ADO.NET etc.) is required.

Supported Excel versions: 2007 to 2013.
Supported DBF formats: dBase III Plus, FoxPro (free tables, Memo support is yet to be decided upon).


Code sample: GDI+: custom Slider control

Tue, 14 Jan 2014 09:40:57 EST


This control is more like a proof of concept: GDI+ API functions can be used for developing complex and visually appealing custom controls in Visual FoxPro.

Code sample: GDI+: custom Clock Control

Fri, 20 Dec 2013 12:38:17 EST

On each timer tick, the control creates a temporary bitmap and draws on it the clock face, then calculates hands angles and draws the hands. Once all drawing is complete the temp bitmap (the back buffer) is copied to the control rectangle (the front buffer).

API function: GdipGetSmoothingMode

Fri, 20 Dec 2013 12:30:50 EST

Determines whether smoothing (antialiasing) is applied to the Graphics object.

API function: GdipSetSmoothingMode

Fri, 20 Dec 2013 12:30:27 EST

Sets the rendering quality of the Graphics object.

Prototyping custom mouse-oriented ListView control

Thu, 12 Dec 2013 13:31:57 EST

I am working on a prototype of mouse-oriented ListView control. It will implement inertial scrolling, simple page flipping, ownerdraw items and more.

Most likely the final control will be an ActiveX control. VCX or PRG version is also feasible. I did some prototyping in VFP using GDI+ class library with good results.

The content of the control -- uniform-size items -- is positioned in rows and columns, and can be scrolled either vertically or horizontally.


Two modes of scrolling are available. When the Free Scrolling is selected, the control moves its content matching the moves of the cursor. While selecting the Page Flipping makes the control display a specified number of rows and columns with fluid transition from page to page.

One-row horizontal free scrolling example:

Code sample: GDI+: creating a gradient

Mon, 02 Dec 2013 11:56:34 EST


Code sample: Implementing image scrolling with inertia (rubber band scrolling)

Sun, 24 Nov 2013 18:13:54 EST

The inertial scrolling can be described as below:
After releasing the mouse button, the image scrolling coninues while decelerating slowly, simulating the presence of inertia. The level of the deceleration depends on the momentum the mouse cursor obtains at the button release.

API function: GetMouseMovePointsEx

Sun, 24 Nov 2013 16:27:47 EST

Retrieves a history of up to 64 previous coordinates of the mouse or pen.

AudioDevice Library (FLL) for Visual FoxPro

Fri, 22 Nov 2013 17:39:10 EST

For playback and recording audio devices implements device enumeration, default device control, volume and channel control. Minimum OS: Windows Vista. Full and demo version downloads are available.



Code sample: Playing WAV files on InteractiveChange

Thu, 21 Nov 2013 09:39:15 EST

This code sample shows how to play a WAV sound on InteractiveChange event of ListBox control. The sound is played asynchronously, which does not slow the UI. Separate sounds are played for odd and even list items.

Code sample: Enumerating Windows Sound Schemes avaialble to the current user

Sun, 17 Nov 2013 19:07:37 EST

The code sample displays a list of available sound schemes as well as the name of the default one. Same list can be accessed via Sound system dialog.

Code sample: Controlling master audio volume by sending WM_APPCOMMAND messages

Sat, 09 Nov 2013 11:40:53 EST

The WM_APPCOMMAND message allows to acquire medium level of control over several OS areas: speakers, microphone, media, browser, mail, default applications. This code sample shows how to mute, unmute and change the volume of the speakers. This technique provides no means of reading the volume level or the mute state.


API function: LsaFreeReturnBuffer

Sun, 20 Oct 2013 18:33:49 EST

Frees the memory used by a buffer previously allocated by the LSA.

API function: LsaGetLogonSessionData

Sun, 20 Oct 2013 18:31:17 EST

Retrieves information about a specified logon session.

API function: LsaEnumerateLogonSessions

Sun, 20 Oct 2013 18:25:37 EST

Retrieves the set of existing logon session identifiers (LUIDs) and the number of sessions.

Code sample: Generating random cryptographic keys

Thu, 17 Oct 2013 17:18:17 EST

The CryptKeyHelper class defined in the code sample below is a wrapper around Windows API Cryptography functions. It implements methods allowing to generate random cryptographic keys, to export the key to a specified file, and to import a key from a specified file.

API function: CryptImportKey

Thu, 17 Oct 2013 17:10:08 EST

Transfers a cryptographic key from a key BLOB into a cryptographic service provider (CSP).

API function: CryptExportKey

Thu, 17 Oct 2013 17:04:47 EST

Exports a cryptographic key or a key pair from a cryptographic service provider (CSP) in a secure manner.

Code sample: Setting default printer

Thu, 10 Oct 2013 11:15:53 EST

The SetDefaultPrinter Windos API function sets the printer name of the default printer for the current user on the local computer.

Code sample: Generating UUID values from numbers

Tue, 08 Oct 2013 19:28:19 EST

The UUID structure is an array of 16 bytes. Therefore a GUID value can be produced simply by stuffing array with certain bytes.

Collection Library (ActiveX) for Visual FoxPro - demo and full version are available

Mon, 07 Oct 2013 11:22:58 EST

The Collections ActiveX library includes Collection class with the interface similar to VFP's native Collection class, as well as the Stack and the Queue classes.

Collections Library (ActiveX) solution is coming soon

Fri, 04 Oct 2013 16:38:06 EST

The Collections ActiveX library contains three classes: Collection, Stack, and Queue.

The Collection class is designed (with VFP7 users in mind) to match the interface of the native Collection class available in VFP versions 8 and 9. The class also includes members -- Clear, Contains, Clone -- missing in the native implementation.

The interfaces of the Stack and the Queue classes are comparable to the existing implementations (.NET, Java, Delphi).

All classes can be instantiated not just in Visual FoxPro but in other clients (Microsoft Office, VBScript).


Code sample: Generating sequential UUID values

Tue, 01 Oct 2013 12:22:18 EST

The code sample generates one thousand of sequentials UUIDs.

API function: UrlMkSetSessionOption

Mon, 12 Aug 2013 10:13:19 EST

Sets options for the current Internet session.

Code sample: How to display Windows On-Screen Keyboard

Sun, 19 Feb 2012 13:37:43 EST

Instead of relying on the physical keyboard to type and enter data, user can type on Windows On-Screen Keyboard. On-Screen Keyboard displays a visual keyboard with all the standard keys.

API function: PathCombine

Sun, 19 Feb 2012 13:34:40 EST

Concatenates two strings that represent properly formed paths into one path; also concatenates any relative path elements.

Code sample: Moving shortcut to a specified position on the Windows Desktop

Sat, 11 Feb 2012 18:22:34 EST

Before testing this code sample, uncheck "Auto arrange icons" and "Align icons to grid" options in the context menu on the Windows desktop.


On the VFP form, each round Shape control corresponds to a shortcut located on the Windows Desktop.

On initialization, the form reads the desktop shortuct locations and then arranges the shapes accordingly. Moving a shape on the form also moves the corresponding desktop shortcut (not otherwise, though it is also achievable).

See also:
  • Obtaining names and positions for shortcuts located on the Windows Desktop

  • Obtaining positions for Windows Desktop shortcuts -- now supports 32- and 64-bit systems!

    Wed, 08 Feb 2012 20:11:43 EST

    This is an addition to the previous post. The VFP code sample "How to obtain positions for Windows Desktop shortcuts" now works equally good on either 32-bit or 64-bit machines.

    Code sample: How to obtain positions for Windows Desktop shortcuts

    Tue, 07 Feb 2012 22:21:10 EST

    This code sample shows how to retrieve names and positions of the shortcuts located on the Windows Desktop.

    Code sample: How to check whether the system is 32-bit or 64-bit

    Tue, 07 Feb 2012 10:47:27 EST

    The IsWow64Process function determines whether the specified process is running under WOW64.

    Progress Dialog Library (FLL) for Visual FoxPro -- demo and full versions available for download

    Thu, 17 Nov 2011 15:34:22 EST

    Full version includes complete C++ source code.

    Progress Dialog Library (FLL) for Visual FoxPro coming soon

    Tue, 08 Nov 2011 21:58:20 EST

    Progress Dialog FLL is a wrapper around IProgressDialog interface implemented in Shell32.dll. It exposes methods that provide options for Visual FoxPro application to display a progress dialog box.


    Code sample: Displaying dimmed window behind VFP top-level form

    Sun, 18 Sep 2011 10:17:55 EST

    This code sample explains how to create a dimmed window, and position it beneath a VFP top level form -- creating so called "Lightbox effect".


    API function: UnregisterClass

    Fri, 16 Sep 2011 18:55:02 EST

    Unregisters a window class, freeing the memory required for the class.

    API function: RegisterClassEx

    Fri, 16 Sep 2011 18:51:32 EST

    Registers a window class for subsequent use in calls to the CreateWindow or CreateWindowEx function.

    ScreenCapture library (FLL) for Visual FoxPro

    Sat, 26 Mar 2011 20:40:46 EST

    Captures images of VFP forms, other windows, and parts of a screen. Saves a captured image to a file (BMP, JPEG, PNG, TIFF, GIF), sends to the clipboard, prints, or opens a preview. Supports image scaling and clipping. Optionally prints a multiline description above a captured image. Allows storing metadata in captured files. Find usage examples, list of functions, trial and full version downloads.

    Youtube video: Visual FoxPro ContextMenu control (ActiveX)

    Thu, 17 Mar 2011 11:47:56 EST

    Fast and easy creation of object-oriented context menus in Visual FoxPro. The control is placed on VFP form and populated

    Youtube video: MenuDesigner for Visual FoxPro ContextMenu control

    Thu, 17 Mar 2011 11:46:49 EST

    Fast and easy creation of object-oriented context menus in Visual FoxPro.

    ContextMenu ActiveX Control. Trial version available.

    Mon, 07 Mar 2011 22:17:47 EST

    Feedback appreciated!


    ContextMenu ActiveX Control. Coming soon.

    Sun, 27 Feb 2011 21:06:31 EST

    The ContextMenu ActiveX Control (ATL COM) is designed for generating and displaying shortcut menus. A generated menu is object-oriented: menu items are accessible during runtime, can be modified, added and deleted. A menu can be exported to XML string, as well as loaded from a XML string. Not compatible with MNX format.


    API function: DrawMenuBar

    Sat, 26 Feb 2011 14:58:43 EST

    Redraws the menu bar of the specified window. If the menu bar changes after the system has created the window, this function must be called to draw the changed menu bar.

    API function: DeleteMenu

    Sat, 26 Feb 2011 14:39:22 EST

    Deletes an item from the specified menu. If the menu item opens a menu or submenu, this function destroys the handle to the menu or submenu and frees the memory used by the menu or submenu.

    LanguageBar and FileSystemWatcher, new ActiveX controls

    Mon, 21 Feb 2011 19:45:46 EST

    Download demo and full versions of LanguageBar and FileSystemWatcher ActiveX controls.

    LanguageBar ActiveX Control. Coming Soon.

    Sat, 19 Feb 2011 11:54:51 EST

    This ActiveX control displays active input language for the current process, and allows switching between registered input languages.


    It can also freeze selected input language preventing it from being accidentally changed. Through this control, other input controls on a form can be locked to using specific input languages.


    FileSystemWatcher ActiveX Control. Download demo.

    Tue, 15 Feb 2011 23:18:39 EST

    Fully functional demo version of the control is available for download.


    FileSystemWatcher ActiveX Control. Coming soon.

    Sat, 12 Feb 2011 17:00:11 EST

    This ActiveX control listens to the file system change notifications (files and directories on a specified path created, deleted, renamed or changed) and raises events, notifying the host about the changes. The control is optimized for single threaded environments, like Visual FoxPro application.


    Code sample: Displaying Windows shell folders in TreeView control with Visual FoxPro FLL

    Mon, 31 Jan 2011 22:53:11 EST

    TreeViewExtender.FLL (download from the web page) is a dynamic-link library compiled in Visual FoxPro FLL format. Combined with this library, a regular TreeView ActiveX control displays shell folders in attractive and convenient way. It can also automatically reflect folder changes happening on a host computer (VFP9).


    - a regular TreeView control is used (MSComctlLib.TreeCtrl)
    - FLL can monitor folder changes in multiple roots
    - VFP9 forms can receive folder change notifications via window messages (VFP9)
    - older VFP versions can poll recent folder changes using Timer control
    - folders are depicted using appropriate system images (no extra graphics required)
    - the tree displays compressed (zipped) folders (Vista)
    - no API declarations in VFP code, the complexity moved inside the FLL
    - the FLL has small footprint -- about 40 KB
    - minimal client: Windows XP, VFP8 (7?)
    - compiled in VS2005 (VC++ 8.0 runtime)

    Code sample: Browsing Windows Known Folders (Special Folders)

    Thu, 20 Jan 2011 10:11:34 EST

    Special Folders are folders which are presented to the user through an interface as an abstract concept, instead of an absolute folder path.


    As of Windows Vista, those folders are referenced by a new set of GUID values called Known Folder IDs, replacing the older system of referring to standard folders by a CSIDL value.

    API function: SHGetSpecialFolderLocation

    Thu, 20 Jan 2011 08:36:41 EST

    Retrieves a pointer to the ITEMIDLIST structure of a special folder.

    Code sample: Displaying Windows Shell Icons (Vista)

    Tue, 18 Jan 2011 11:44:14 EST

    This code sample employs SHGetStockIconInfo Shell API function for retrieving information about system-defined Shell icons.

    ICO files are neither created or required to run this code sample. For icons, the ListView connects directly to the system image list using icon index obtained through SHGetStockIconInfo call.

    A Shell icon (actually any ICO resource from EXE or DLL file) can be stored to ICO file perfectly usable in VFP.

    API function: SHGetStockIconInfo

    Mon, 17 Jan 2011 16:44:29 EST

    Retrieves information about system-defined Shell icons.

    Code sample: Reading and setting explicit Application User Model ID for the current process (Win7)

    Mon, 17 Jan 2011 09:18:05 EST

    Application User Model IDs (AppUserModelIDs) are used extensively by the taskbar in Windows 7 and later systems to associate processes, files, and windows with a particular application.


    API function: DwmExtendFrameIntoClientArea

    Sun, 16 Jan 2011 09:40:28 EST

    Extends the window frame behind the client area.

    API function: SHSimpleIDListFromPath

    Sat, 15 Jan 2011 14:21:29 EST

    Returns a pointer to an ITEMIDLIST structure when passed a path.

    Code sample: Customizing the frame of top-level form: removing the standard frame (VFP9, Vista)

    Thu, 13 Jan 2011 09:44:48 EST

    This minimalistic looking About form is created by calling the DwmExtendFrameIntoClientArea, and subsequent processing of the WM_NCCALCSIZE and WM_NCHITTEST windows messages.

    API function: DwmExtendFrameIntoClientArea

    Wed, 12 Jan 2011 20:49:49 EST

    This function is used to extend the application frame into the client area. Supposedly some controls can be integrated into the extra space on the frame.

    Code sample: How to detect when a removable drive gets connected or disconnected (VFP9)

    Sat, 08 Jan 2011 15:31:02 EST

    In this code sample, VFP form hosts the ListView control. The control is populated with a list of the currently available disk drives. The form gets notified by the system through a Windows message upon a disk drive becoming available or getting ejected. The notification of the event includes a drive letter assigned to the device.

    Disk drive devices (examples: flash memory card, external hard drive, a network drive) get depicted in the ListView using icons and descriptions provided by the system.

    Code sample: Capturing keyboard activity of another application using the Raw Input API (VFP9)

    Thu, 06 Jan 2011 13:59:08 EST

    In this code sample, VFP form registers for receiving the raw input from each and any keyboard type device connected to the computer. That includes keyboards, numeric keypads, keyboard wedge scanners and so on.

    The testing is simple. Any text typed in another Windows application (like text editor, spreadsheet, browser) will be duplicated in the EditBox on the VFP form.
    Includes parallel VFP and C# versions.

    Similar results can be achieved with global keyboard and mouse hooks.

    In case of multiple input devices, the Raw Input API can separate input (i.g. keystrokes, mouse events) coming from different devices.

    API function: GetRawInputData

    Wed, 05 Jan 2011 20:25:40 EST

    Retrieves the raw input from the specified device.

    API function: RegisterRawInputDevices

    Wed, 05 Jan 2011 20:21:50 EST

    Registers the devices that supply the raw input data.

    API function: ToAscii

    Wed, 05 Jan 2011 12:41:43 EST

    Translates the specified virtual-key code and keyboard state to the corresponding character or characters.

    API function: MapVirtualKey

    Wed, 05 Jan 2011 12:35:58 EST

    Translates (maps) a virtual-key code into a scan code or character value, or translates a scan code into a virtual-key code.

    Code sample: Enumerating raw input devices attached to the system

    Tue, 04 Jan 2011 20:40:12 EST

    There are many user-input devices beside the traditional keyboard and mouse. For example, user input can come from a joystick, a touch screen, a microphone, or other devices that allow great flexibility in user input.


    These devices are collectively known as Human Interface Devices (HIDs). The raw input API provides a stable and robust way for applications accepting raw input from any HID, including the keyboard and mouse.

    API function: GetRawInputDeviceList

    Tue, 04 Jan 2011 20:13:14 EST

    Enumerates the raw input devices attached to the system.

    API function: GetRawInputDeviceInfo

    Tue, 04 Jan 2011 20:12:59 EST

    Retrieves information about the raw input device.

    Magnetic stripe card scanning application (.NET and Visual FoxPro versions included)

    Wed, 29 Dec 2010 15:25:49 EST

    This sample application is designed for scanning magnetic stripe cards (ISO/IEC 7813 standard for financial transaction cards) using USB card reader. Each scan's data gets split into tracks 1 and 2, and further into the standard fields.


    The application consists of a simple GUI and magnetic stripe data parser. VFP and .NET versions of the application are functionally and visually identical. Each version includes complete source code.

    API function: CreateVirtualDisk

    Tue, 02 Nov 2010 08:52:16 EST

    Creates a virtual hard disk (VHD) image file, either using default parameters or using an existing virtual disk or physical disk.

    API function: DetachVirtualDisk

    Mon, 01 Nov 2010 20:20:28 EST

    Detaches a virtual hard disk (VHD) by locating an appropriate VHD provider to accomplish the operation.

    API function: AttachVirtualDisk

    Mon, 01 Nov 2010 20:17:35 EST

    Attaches a virtual hard disk (VHD) by locating an appropriate VHD provider to accomplish the attachment.

    API function: OpenVirtualDisk

    Mon, 01 Nov 2010 20:13:52 EST

    Opens a virtual hard disk (VHD) for use.

    Code sample: Winsock: resolving an address to a host name

    Thu, 14 Oct 2010 11:55:37 EST

    The getnameinfo function provides protocol-independent name resolution from an address to an ANSI host name and from a port number to the ANSI service name.

    API function: getnameinfo

    Thu, 14 Oct 2010 11:49:42 EST

    Provides protocol-independent name resolution from an address to an ANSI host name and from a port number to the ANSI service name.

    Code sample: Verifying a file using the Authenticode policy provider

    Thu, 07 Oct 2010 08:24:58 EST

    The WinVerifyTrust performs a trust verification action on a specified object. The function passes the inquiry to a trust provider that supports the action identifier, if one exists.

    API function: WinVerifyTrust

    Thu, 07 Oct 2010 08:13:01 EST

    Performs a trust verification action on a specified object. The function passes the inquiry to a trust provider that supports the action identifier, if one exists.

    Extended MessageBox library (FLL) for Visual FoxPro with complete C++ source code

    Mon, 04 Oct 2010 09:10:04 EST

    The purchased download for the solution now includes Visual Studio FLL project with complete C++ source code.


    API function: CryptProtectData

    Mon, 23 Aug 2010 11:16:01 EST

    Performs encryption on the data in a DATA_BLOB structure. Scoped to local computer, or to user credentials.

    API function: CryptUnprotectData

    Mon, 23 Aug 2010 11:14:19 EST

    Decrypts and does an integrity check of the data in a DATA_BLOB structure. Scoped to local computer, or to user credentials.

    Code sample: Compressing and decompressing files with Windows API Runtime Library routines

    Fri, 13 Aug 2010 09:30:30 EST

    Presented LZNT1Compression class implements compression and decompression of strings and files. It provides a moderate level of compression.

    The class is built on several functions from Windows API Runtime library. Tested and found operational under VFP9 SP2 on Windows XP and on Windows 7.

    API function: RtlGetCompressionWorkSpaceSize

    Thu, 12 Aug 2010 18:36:35 EST

    This function is used to determine the correct size of the WorkSpace buffer for the RtlCompressBuffer and RtlDecompressFragment functions.