Article: Q172273
Product(s): Microsoft Visual Basic for Windows
Version(s): WINDOWS:4.0, 5.0
Operating System(s):
Keyword(s): kbGrpDSVBDB
Last Modified: 11-JAN-2001
-------------------------------------------------------------------------------
The information in this article applies to:
- Microsoft Visual Basic Learning Edition for Windows, version 5.0
- Microsoft Visual Basic Professional Edition for Windows, version 5.0
- Microsoft Visual Basic Enterprise Edition for Windows, version 5.0
- Microsoft Visual Basic Standard Edition, 32-bit, for Windows, version 4.0
- Microsoft Visual Basic Professional Edition, 32-bit, for Windows, version 4.0
- Microsoft Visual Basic Enterprise Edition, 32-bit, for Windows, version 4.0
-------------------------------------------------------------------------------
SUMMARY
=======
The API text viewer included with Visual Basic 4.0 does not define the constants
used in the OpenProcess API. The OpenProcess API is used to get a handle to a
running process from a process ID. The existing samples in the Microsoft
Knowledge Base define one of the possible constants, SYNCHRONIZE, but the other
values may be of use in special situations.
MORE INFORMATION
================
The constants are:
PROCESS_ALL_ACCESS =&H1F0FFF Specifies all possible access flags for
the process object.
PROCESS_CREATE_THREAD =&H2 Enables using the process handle in the
CreateRemoteThread function to create a thread in the process.
PROCESS_DUP_HANDLE =&H40 Enables using the process handle as either
the source or target process in the DuplicateHandle function to
duplicate a handle.
PROCESS_QUERY_INFORMATION =&H400 Enables using the process handle in the
GetExitCodeProcess and GetPriorityClass functions to read
information from the process object.
PROCESS_SET_INFORMATION =&H200 Enables using the process handle in the
SetPriorityClass function to set the priority class of the
process.
PROCESS_TERMINATE =&H1 Enables using the process handle in the
TerminateProcess function to terminate the process.
PROCESS_VM_OPERATION =&H8 Enables using the process handle in the
VirtualProtectEx and WriteProcessMemory functions to modify the
virtual memory of the process.
PROCESS_VM_READ =&H10 Enables using the process handle in the
ReadProcessMemory function to read from the virtual memory of
the process.
PROCESS_VM_WRITE =&H20 Enables using the process handle in the
WriteProcessMemory function to write to the virtual memory of
the process.
SYNCHRONIZE =&H100000 Enables using the process handle in any of the
wait functions to wait for the process to terminate.
If you need to create a handle that is to be used for more than one type of
access, you should add the desired access type parameters together. For example,
to get a handle to use with WaitForSingleObject and GetExitCodeProcess, you
would use:
hProcess = OpenProcess(PROCESS_QUERY_INFORMATION+SYNCHRONIZE,FALSE,pid)
REFERENCES
==========
For additional information, please see the following article(s) in the Microsoft
Knowledge Base:
Q129797 : HOWTO: Launch a Win32 Application from Visual Basic
Q150767 : HOWTO: Redirect Standard I/O of a Console Application
======================================================================
Keywords : kbGrpDSVBDB
Technology : kbVBSearch kbAudDeveloper kbZNotKeyword6 kbZNotKeyword2 kbVB500Search kbVBA500 kbVB500 kbVB400Search kbVB400
Version : WINDOWS:4.0, 5.0
Hardware : x86
Issue type : kbhowto
=============================================================================