Using Win32 functions in Visual FoxPro Image Gallery
Code examples:
Retrieving country-specific dialing information from the Windows Telephony list of countries
Creating a device context for the specified printer
Obtaining the bounding rectangle for the specified device context
Retrieving the System Time adjustment
GDI+: loading image file, drawing on it, saving the result to another file
Retrieving top-child window for the VFP form
Converting twips to pixels and vice versa
FindText -- the hopeless and useless Common Dialog
One more way to retrieve environment strings
Retrieving a handle to DLL and address of an exported function in it
Retrieving configuration information for the specified server (Win98/Me)
Retrieving the priority class for the current process
Using the Semaphore object to allow only one instance of VFP application running
Retrieving list of Global Atom names
Using the GetTempFileName
Using the Semaphore object
High-powered ALLTRIM
How to play a waveform sound (a WAV file in particular)
How to test file attributes (key method for FileExists and DirectoryExists routines)
Creating hash values for the list of names
Obtaining I/O counts for the current process
Pocket PC: modifying keys in the System Registry
Setting and retrieving the double-click time for the mouse
Setting the volume label
Using shared memory to exchange data between two FoxPro applications

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
Before you begin:
Presented below the SharedMemory class uses FileMapping API calls to allocate a block of memory accessible from any FoxPro application that can instantiate this class. All applications share the name of this memory buffer, for example "MYAPPSHAREDMEMORY".



To test this class, start two or more VFP executables and run this code in each session:

LOCAL oForm As TForm
oForm = CREATEOBJECT("Tform")
oForm.Show(1)
* end of main

DEFINE CLASS Tform As Form
        Width=460
        Height=200
        Caption="Using shared memory to exchange " +;
                "data between processes"
        smObject=NULL
        
        ADD OBJECT txtSharedMemory As EditBox WITH;
        Left=5, Top=10, Width=450, Height=120
        
        ADD OBJECT cmdReadFromMemory As CommandButton WITH;
        Left=40, Top=150, Width=190, Height=27,;
        Caption="Read From Shared Memory"

        ADD OBJECT cmdWriteToMemory As CommandButton WITH;
        Left=230, Top=150, Width=190, Height=27,;
        Caption="Write To Shared Memory"

PROCEDURE Init
        THIS.smObject = CREATEOBJECT("SharedMemory",;
                "MYAPPSHAREDMEMORY", 1024)

PROCEDURE cmdReadFromMemory.Click
        ThisForm.txtSharedMemory.Value =;
                ThisForm.smObject.ReadFromSharedMemory()

PROCEDURE cmdWriteToMemory.Click
        LOCAL cBuffer
        cBuffer = PADR(ThisForm.txtSharedMemory.Value,;
                ThisForm.smObject.GetSharedMemorySize())
        ThisForm.smObject.WriteToSharedMemory(m.cBuffer)
ENDDEFINE

See also:
  • Using a Semaphore object to prevent VFP application from running more than one instance
  • Using Windows Clipboard for passing data records between VFP applications
  •  
      Members area. Log in to view this example.
     
      User name:
      Password:
     
     
      Forgot your password?
     
      Sign up for
    the Membership
     
     


    User rating: 0/10 (0 votes)
    Rate this code sample:
    • ~
    4228 bytes  
    Created: 2005-10-28 12:15:17  
    Modified: 2011-12-10 09:20:22  
    Visits in 7 days: 92  
    Listed functions:
    CloseHandle
    CreateFileMapping
    CreateMutex
    GetLastError
    MapViewOfFile
    ReleaseMutex
    UnmapViewOfFile
    WaitForSingleObject
    Printer friendly API declarations
    My comment:
    Mutex object is used to synchronize access to the shared memory block.
    Word Index links for this example:
    Translate this page:
      Spanish    Portuguese    German    French    Italian  
    FreeTranslation.com offers instant, free translations of text or web pages.
    User Contributed Notes:
    There are no notes on this subject.


    Copyright © 2001-2013 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.1.55-log), the Open Source standard SQL database, AceHTML Freeware Version 4, freeware HTML Editor of choice.   Hosted by Korax Online Inc.
    Last Topics Visited (54.242.188.217)
    9 sec.Function: 'GetGraphicsMode'
    2.58 hrs.Example: 'GDI+: reading and writing metadata in JPEG and TIFF files'
    7.21 hrs.Example: 'Closing Windows'
     Example: 'Enumerating connections made to a shared resource for the local computer (WinNT only)'
    7.9 hrs.Function: 'SQLRowCount'
    Function group: 'ODBC API'
    7.91 hrs.Function: 'GetShellWindow'
    Function group: 'Window'
    Google
    Advertise here!