========================================================================
MICROSOFT FOUNDATION CLASS LIBRARY : IPCWorkshop
========================================================================
AppWizard has created this IPCWorkshop application for you. This application
not only demonstrates the basics of using the Microsoft Foundation classes
but is also a starting point for writing your application.
This file contains a summary of what you will find in each of the files that
make up your IPCWorkshop application.
IPCWorkshop.dsp
This file (the project file) contains information at the project level and
is used to build a single project or subproject. Other users can share the
project (.dsp) file, but they should export the makefiles locally.
IPCWorkshop.h
This is the main header file for the application. It includes other
project specific headers (including Resource.h) and declares the
CIPCWorkshopApp application class.
IPCWorkshop.cpp
This is the main application source file that contains the application
class CIPCWorkshopApp.
IPCWorkshop.rc
This is a listing of all of the Microsoft Windows resources that the
program uses. It includes the icons, bitmaps, and cursors that are stored
in the RES subdirectory. This file can be directly edited in Microsoft
Visual C++.
IPCWorkshop.clw
This file contains information used by ClassWizard to edit existing
classes or add new classes. ClassWizard also uses this file to store
information needed to create and edit message maps and dialog data
maps and to create prototype member functions.
res\IPCWorkshop.ico
This is an icon file, which is used as the application's icon. This
icon is included by the main resource file IPCWorkshop.rc.
res\IPCWorkshop.rc2
This file contains resources that are not edited by Microsoft
Visual C++. You should place all resources not editable by
the resource editor in this file.
/////////////////////////////////////////////////////////////////////////////
AppWizard creates one dialog class:
IPCWorkshopDlg.h, IPCWorkshopDlg.cpp - the dialog
These files contain your CIPCWorkshopDlg class. This class defines
the behavior of your application's main dialog. The dialog's
template is in IPCWorkshop.rc, which can be edited in Microsoft
Visual C++.
/////////////////////////////////////////////////////////////////////////////
Other standard files:
StdAfx.h, StdAfx.cpp
These files are used to build a precompiled header (PCH) file
named IPCWorkshop.pch and a precompiled types file named StdAfx.obj.
Resource.h
This is the standard header file, which defines new resource IDs.
Microsoft Visual C++ reads and updates this file.
/////////////////////////////////////////////////////////////////////////////
Other notes:
AppWizard uses "TODO:" to indicate parts of the source code you
should add to or customize.
If your application uses MFC in a shared DLL, and your application is
in a language other than the operating system's current language, you
will need to copy the corresponding localized resources MFC42XXX.DLL
from the Microsoft Visual C++ CD-ROM onto the system or system32 directory,
and rename it to be MFCLOC.DLL. ("XXX" stands for the language abbreviation.
For example, MFC42DEU.DLL contains resources translated to German.) If you
don't do this, some of the UI elements of your application will remain in the
language of the operating system.
/////////////////////////////////////////////////////////////////////////////
========================================================================
INTRODUCTION
========================================================================
The main objective of this application is to describe how simple the various
Inter Process Communication methods can be used for data transfer. This
application also help us to decide which of the available IPC methods are
best to use.Inorder to explain the IPC methods effectively and simply,
I have taken a structure pointer for description. The structure named
EmployeeData is created and its pointer is passed from the client to the
server. This demo application describes one way inter process communication
(ie) from the client to the server for simplicity. The server will just
listen to its clients. Here I have described 5 types of IPCs.( though Sockets
are not said to be an IPC, it satisfies the data transfer purpose).
1 Clipboard Local Mc
2 File Mapping Local Mc
3 Named Pipes Local Mc/Intranet
4 Mailslots Local Mc/Intranet
5 Sockets Local Mc/Intranet/Internet
========================================================================
CLIPBOARD
========================================================================
The clipboard is a set of functions and messages that enable applications to
transfer data. Because all applications have access to the clipboard, data can
be easily transferred between applications or within an application.
Procedure
To Write in the Clipboard
1. OpenClipboard
2. Register Clipboard Format (Optional)
3. Use global allocation for the data
4. SetClipboardData
5. CloseClipboard.
To Read from the Clipbaord
1. OpenClipboard
2. Register Clipboard Format (Optional)
3. Check the clipboard format is available
4. Get the clipboard data
5. Unlock the handle
Clipboard format registration is Optional. Standard clipboard formats are available.
Since Clipboard is used to transfer data in the local machine only, the server can be
notified by posting message using HWND_BROADCAST.
========================================================================
FILE MAPPING
========================================================================
File mapping is an efficient way for two or more processes on the same computer to
share data. Here i have not described about the synchronization of the process.
In order to access the file's contents, the processes uses virtual address space
called file view. Processes read from and write to the file view using pointers,
just as they would with dynamically allocated memory.
Procedure
To write in the file
1. Create File Mapping
2. map the handle to the process virtual address space (MapViewOfFile)
3. copy the data in the file
To Read from the File
1. Create File Mapping
2. MapViewOfFile (maps the handle to the process virtual address space)
3. copy the data from the file.
Notify the server using HWND_BROADCAST handle. we have successfully trasferred the
pointer between two processes on the same local machine. we will get curious of how
to pass this pointer in the Intranet if this two processes resides on different computers.
Next section is Named Pipes and Mailslots.
========================================================================
MAILSLOTS
========================================================================
Any win32 application can store messages in a mailslot and the owner will retrieve
messages that are stored there. Mailslot is a simple way for a process to broadcast
messages to multiple processes using datagram. Hence there won't be any confirmation
of the receipt. This is a mechanism for one way inter process communication.
Procedure
To write in the Mailslot
1. CreateMailslot (Creates Mailslot)
2. WriteFile (write it to the mailslot)
To Read from the Mailslot
1. CreateFile (opens the mailslot)
2. GetMailslotInfo (check for the messages in the mail slot)
3. Read from the Mailslot (ReadFile)
A mailslot server is a process that creates and owns a mailslot. When the server creates
a mailslot named MAILSLOT_EMPDATA it receives a mailslot handle.
m_strMailslot = "\\\\.\\mailslot\\MAILSLOT_EMPDATA";
m_hInputslot
没有合适的资源?快使用搜索试试~ 我知道了~
Visual C++精彩实例详解.rar
共2000个文件
ico:553个
h:329个
cpp:272个
4星 · 超过85%的资源 需积分: 5 10 下载量 169 浏览量
2011-10-07
20:29:51
上传
评论
收藏 34.71MB RAR 举报
温馨提示
Visual C++精彩实例详解.rar Visual C++精彩实例详解.rar Visual C++精彩实例详解.rar
资源推荐
资源详情
资源评论
收起资源包目录
Visual C++精彩实例详解.rar (2000个子文件)
PwdSpy.001 8KB
PwdSpyHk.001 7KB
CTelnet.001 5KB
MovieApp.001 5KB
GFTPTest.001 4KB
Prcs_Fsh.ani 42KB
Prcs_Ice.ani 42KB
Prcs_IcP.ani 42KB
Link_Vnd.ani 40KB
Work_IcP.ani 39KB
Busy_Gea.ani 35KB
Link_Gea.ani 35KB
Link_IcP.ani 35KB
Work_Ice.ani 32KB
Work_Fsh.ani 32KB
Link_Ice.ani 32KB
Work_Vnd.ani 31KB
Busy_Hnd.ani 29KB
Work_Hnd.ani 27KB
Cursor1.ani 26KB
Text_IcP.ani 26KB
Help_IcP.ani 26KB
Link_Fsh.ani 23KB
work_mox.ani 22KB
busy_mox.ani 22KB
Unav_IcP.ani 19KB
Norm_Vnd.ani 18KB
Help_Ice.ani 16KB
Help_Fsh.ani 16KB
Busy_Fsh.ani 16KB
Busy_Ice.ani 16KB
Busy_IcP.ani 16KB
Horz_Gea.ani 13KB
Dgn1_Gea.ani 13KB
Vert_Gea.ani 13KB
Dgn2_Gea.ani 13KB
Text_Ice.ani 13KB
Text_Fsh.ani 13KB
Unav_Ice.ani 13KB
Unav_Fsh.ani 13KB
Busy_Vnd.ani 9KB
Help_Vnd.ani 5KB
OfficeXPMenu.aps 551KB
NetPhone.aps 491KB
CButtonST_Demo.aps 424KB
MPlayer.aps 255KB
dlgscroll.aps 250KB
OfficeXPMenu.aps 103KB
transwin.aps 59KB
OpticalNetwork.aps 52KB
tts_final.aps 51KB
PwdSpy.aps 50KB
Abc.aps 46KB
CDROMControl.aps 46KB
ScrollBitmap.aps 45KB
test.aps 45KB
showbmp.aps 43KB
SpinnerTB.aps 41KB
Reg.aps 40KB
HardwareInfo.aps 39KB
Process.aps 37KB
PictureStream.aps 37KB
EthernetAdapter.aps 36KB
DataBinding.aps 36KB
WQDemo.aps 35KB
Dial.aps 35KB
DlgStatusBar.aps 35KB
XPBtn_Scroll.aps 35KB
ex01b.aps 35KB
IntelCPUID.aps 34KB
HDSerial.aps 34KB
Mutex.aps 34KB
KeyboardHook.aps 33KB
CTelnet.aps 30KB
MovieApp.aps 30KB
VRDemo.aps 30KB
FindFiles.aps 26KB
GFTPTest.aps 23KB
Clipboard.aps 23KB
WinXP.aps 23KB
IPCWorkshop.aps 22KB
SelfDelete.aps 22KB
Modem.aps 22KB
Mail.aps 21KB
Wavelet1D.aps 21KB
Wavelet2D.aps 21KB
IconDlgTest.aps 21KB
ttt.aps 20KB
NBTSTAT.APS 20KB
doevents.aps 20KB
WinXPThemeDemo.aps 18KB
UnRegActiveX.bat 143B
RegActiveX.bat 131B
Sample.bmp 1.37MB
WinXP下本例程效果图.bmp 853KB
Win2000下本章例程效果图.bmp 600KB
Kitty.bmp 428KB
Win2000下本章例程效果图.bmp 387KB
Win2000下本章例程效果图.bmp 360KB
插入控件.bmp 241KB
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
- Ma200820112011-11-06额,还以为是教材呢,不过还是谢谢啦
尹成
- 粉丝: 1w+
- 资源: 675
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功