The Windows API DuplicateHandle() http://msdn.microsoft.com/en-us/library/ms724251(VS.85).aspx Requires the Object handle to be duplicated and a handle to both the original
If I understood correctly, you want to synchronize two unrelated processes through the same event. If so, you can use named events.
Create one using CreateEvent API function, provide it a name, then from the second process use OpenEvent API function, specifying the name of the event.
You have similar functions for other synchronization objects, such as mutexes (OpenMutex) or semaphores (OpenSemaphore).