Using Win32 functions in Visual FoxPro Image Gallery
Code examples:
Custom GDI+ class
Obtaining names and positions for shortcuts located on the Windows Desktop
Displaying dimmed window behind VFP top-level form
How to change display settings: screen resolution, screen refresh rate
GDI+: Implementing image scrolling with inertia
Enumerating devices installed on the local machine
Subclassing CommandButton control to create BackColor property
Vertical Label control
Splash Screen for the VFP application
Browsing Windows Known Folders (Special Folders)
How to load a user profile
Moving shortcut to a specified position on the Windows Desktop
Disconnecting USB Mass Storage Device programmatically
How to make a VFP form fading out when released (GDI version)
Monitoring clipboard content changes (VFP9)
Printing Image File, programmatically set print page orientation to landscape
How to put a horizontal text scrolling on the form (a news line, marquee)
Printing text with the Escape function
System Image List Viewer
How to print a bitmap file
How to put a vertical text scrolling on the form (a movie cast)
Reading and setting system access privileges for the current process
Enumerating Processes -- WinNT
Writing entries to custom Event Log
Detecting changes in connections to removable drives (VFP9)

User rating: 0/10 (0 votes)
Rate this code sample:
  • ~
More code examples    Listed functions    Add comment     W32 Constants      Translate this page Printer friendly version of this code sample
click to open
Before you begin:
VFP application can receive system notifications when a disk drive gets connected or disconnected (USB, network drive).

In this code sample, a ListView control on VFP form displays available disk drives using matching icons and descriptions.

Note that this code sample requires VFP9 version of the BINDEVENT() function. The one that can handle Windows messages.

See also:
  • Disconnecting USB Mass Storage Device programmatically
  • Mapping and disconnecting network drives
  • Enumerating Volumes and Volume Mounting Points
      Members area. Log in to view this example.
      User name:
      Forgot your password?
      Sign up for
    the Membership

    User rating: 0/10 (0 votes)
    Rate this code sample:
    • ~
    10044 bytes  
    Created: 2011-01-07 17:18:05  
    Modified: 2011-05-06 09:05:14  
    Visits in 7 days: 163  
    Listed functions:
    Printer friendly API declarations
    My comment:
    The WM_DEVICECHANGE message notifies an application of a change to the hardware configuration of the computer.

    Upon locking and ejection of removable storage devices (not limited to), the system broadcasts the WM_DEVICECHANGE message to notify applications and device drivers about changes in the configuration.

    Examples of events that trigger the broadcasting of WM_DEVICECHANGE message:

  • USB flash drive inserted or ejected
  • external hard drive connected to USB port, or ejected
  • network drive mapped or disconnected
  • CD inserted in CD drive, or ejected

    The main Visual FoxPro window ( _vfp.HWnd ) and any top-level form ( ShowWindow=2, ThisForm.HWnd ) normally receive WM_DEVICECHANGE messages.

    VFP application can also deny or grant system requests for device removal (yet to be covered in this or another code sample).

    * * *
    .NET version of this code sample:

    * * *
    An installation CD/DVD disk may contain Autorun.inf file. Here is an example of the content.
    label=Linksys Router Setup

    It makes sense, and Windows Explorer apparently behaves this way, depicting a device using whenever available the AutoRun.Label string, and the icon retrieved from the file the AutoRun.Open points at.

    Use GetPrivateProfileString function for retrieving values from .ini and .inf files.

    * * *
    MIcrosoft Support, Article 163503. How to receive notification of CD-ROM insertion or removal
  • Word Index links for this example:
    Translate this page:
      Spanish    Portuguese    German    French    Italian offers instant, free translations of text or web pages.
    User Contributed Notes:
    There are no notes on this subject.

    Copyright 2001-2018 News2News, Inc. Before reproducing or distributing any data from this site please ask for an approval from its owner. Unless otherwise specified, this page is for your personal and non-commercial use. The information on this page is presented AS IS, meaning that you may use it at your own risk. Microsoft Visual FoxPro and Windows are trade marks of Microsoft Corp. All other trademarks are the property of their respective owners. 

    Privacy policy
    Credits: PHP (4.4.9), an HTML-embedded scripting language, MySQL (5.6.39), the Open Source standard SQL database, AceHTML Freeware Version 4, freeware HTML Editor of choice.   Hosted by Korax Online Inc.
    Last Topics Visited (
    20 sec.Function: 'CeSeekDatabase'
    Function group: 'Remote Application Programming (RAPI)'
    37 sec.Function: 'GetProductInfo'
    Function group: 'System Information'
    55 sec.Articles
    1.23 min.Function: 'UnregisterHotKey'
    Function group: 'Keyboard Input'
    1.55 min.
    1.82 min.Example: 'Custom GDI+ class'
    2.17 min.Function: 'NetUserChangePassword'
    Function group: 'Network Management'
    2.47 min.Function: 'EnumPrintProcessors'
    Function group: 'Printing and Print Spooler'
    3.07 min.
    Function group: 'Kernel Transaction Manager'
    3.35 min.Function: 'CryptGetHashParam'
    Function group: 'Cryptography Reference'
    Advertise here!