Using Win32 functions in Visual FoxPro Image Gallery
Code examples:
Using shared memory to exchange data between applications (processes)
Using WM_COPYDATA for interprocess communication (VFP9)
Placing an arbitrary rectangular area of main VFP window on the Clipboard
Retrieving local computer and user names
WAV file player
Creating the Open dialog box to specify the drive, directory, and name of a file to open
Sending email messages with Simple MAPI
CryptoAPI: Collection of Providers class
Enumerating print jobs and retrieving information for default printer (JOB_INFO_1 structures)
How to create MD-5 and SHA-1 hash values from a string
How to create non-blocking Winsock server
How to display a user-defined icon in the MessageBox dialog
How to write and read Window Properties for the specified window
Peer-to-peer LAN messenger built with Mailslot API functions
How to extract frames from AVI files
URL: splitting into its component parts
Using Video Capture: displaying on FoxPro form frames and previewing video obtained from a digital camera
A procedure for setting file times
Downloading files from the FTP server using InternetReadFile
GDI+ fun: roach-infested desktop
How to display Windows On-Screen Keyboard
Passing data records between VFP applications via the Clipboard
How to change the name and the size of the font in the MessageBox dialog
How to display advanced Task Dialog (Vista)
Using shared memory to exchange data between applications (processes)

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
Versions:
click to open
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: 2013-08-09 13:03:42  
    Visits in 7 days: 132  
    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-2017 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.38), the Open Source standard SQL database, AceHTML Freeware Version 4, freeware HTML Editor of choice.   Hosted by Korax Online Inc.
    Last Topics Visited (54.196.47.128)
    8 sec.Function: 'NetUserAdd'
    Function group: 'Network Management'
    12 sec.Function: 'GdipDeleteFont'
    Function group: 'GDI+ Font'
    17 sec.Function: 'PlaySound'
    Function group: 'Windows Multimedia'
    22 sec.Function: 'StrFromTimeInterval'
    Function group: 'String'
    26 sec.Example: 'Pocket PC: custom RAPI class for operating with files and folders on mobile device'
    36 sec.Function: 'WSAStartup'
    Function group: 'Windows Sockets 2 (Winsock)'
    40 sec.Function: 'WSACreateEvent'
    Function group: 'Windows Sockets 2 (Winsock)'
    44 sec.
    Function group: 'Windows Multimedia'
    49 sec.
    Function group: 'Region'
    55 sec.
    Function group: 'Shell Lightweight Utility APIs -- Path Functions'
    Google
    Advertise here!