Click here to Skip to main content
15,888,025 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: scanf to scanf_s Pin
Cedric Moonen14-Feb-08 0:05
Cedric Moonen14-Feb-08 0:05 
GeneralRe: scanf to scanf_s Pin
Russell'14-Feb-08 1:33
Russell'14-Feb-08 1:33 
GeneralRe: scanf to scanf_s Pin
Cedric Moonen14-Feb-08 1:45
Cedric Moonen14-Feb-08 1:45 
GeneralRe: scanf to scanf_s Pin
Russell'14-Feb-08 2:00
Russell'14-Feb-08 2:00 
QuestionHow to comper 2 CListCtrl table with minimal complexity ? Pin
Yanshof13-Feb-08 23:12
Yanshof13-Feb-08 23:12 
QuestionListView with LargeIcon items of different sizes. Pin
Chesnokov Yuriy13-Feb-08 22:45
professionalChesnokov Yuriy13-Feb-08 22:45 
GeneralRe: ListView with LargeIcon items of different sizes. Pin
zengkun10014-Feb-08 14:35
zengkun10014-Feb-08 14:35 
GeneralProxy/Stub issue Pin
George_George13-Feb-08 21:44
George_George13-Feb-08 21:44 
Hello everyone,


I am learning how to write a local out-of-process server and made a runnable program (including client, proxy DLL and server EXE). It works fine and I am inerested to learn how they are binded together internally. I have posted the registration items for EXE server, proxy DLL and interface as below. Here is my understanding of how a client will find the EXE server from component ID and interface. Please review and correct me if I am wrong.

1. Client issue request through CoCreateInstance with interface ID IX and component ID Component1;
2. IX maps to interface registration item and then find the related proxy/stub item in registry,

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{32BB8323-B41B-11CF-A6BB-0080C7B2D682}\ProxyStubClsid32]
@="{32BB8323-B41B-11CF-A6BB-0080C7B2D682}"

3. In the proxy/stub item in registry, related physical DLL file will be found and loaded into client's process, here is the related item,

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{32BB8323-B41B-11CF-A6BB-0080C7B2D682}\InProcServer32]
@="D:\\Visual Studio 2008\\Projects\\test_exeserver1\\Debug\\test_proxy.dll"
"ThreadingModel"="Both"

4. For the requested component name, all the registry will be searched to find "Component1", until the following posted EXE Server item is found and then located (started) by its physical location

[HKEY_CLASSES_ROOT\CLSID\{0C092C29-882C-11CF-A6BB-0080C7B2D682}\LocalServer32]
@="D:\\Visual Studio 2008\\Projects\\test_exeserver1\\Debug\\test_exeserver1.exe"

My understanding correct? Do I miss any information?

--------------------
EXE Server

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{0C092C29-882C-11CF-A6BB-0080C7B2D682}]
@="Inside COM, Chapter 10 Example, Component 1"

[HKEY_CLASSES_ROOT\CLSID\{0C092C29-882C-11CF-A6BB-0080C7B2D682}\LocalServer32]
@="D:\\Visual Studio 2008\\Projects\\test_exeserver1\\Debug\\test_exeserver1.exe"

[HKEY_CLASSES_ROOT\CLSID\{0C092C29-882C-11CF-A6BB-0080C7B2D682}\ProgID]
@="InsideCOM.Chap10.Cmpnt1.1"

[HKEY_CLASSES_ROOT\CLSID\{0C092C29-882C-11CF-A6BB-0080C7B2D682}\VersionIndependentProgID]
@="InsideCOM.Chap10.Cmpnt1"


Proxy/Stub DLL

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{32BB8323-B41B-11CF-A6BB-0080C7B2D682}]
@="PSFactoryBuffer"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{32BB8323-B41B-11CF-A6BB-0080C7B2D682}\InProcServer32]
@="D:\\Visual Studio 2008\\Projects\\test_exeserver1\\Debug\\test_proxy.dll"
"ThreadingModel"="Both"

Interface

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{32BB8323-B41B-11CF-A6BB-0080C7B2D682}]
@="IX"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{32BB8323-B41B-11CF-A6BB-0080C7B2D682}\NumMethods]
@="5"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{32BB8323-B41B-11CF-A6BB-0080C7B2D682}\ProxyStubClsid32]
@="{32BB8323-B41B-11CF-A6BB-0080C7B2D682}"
--------------------


thanks in advance,
George
QuestionMouse Event in Activex Control Pin
manish.patel13-Feb-08 20:56
manish.patel13-Feb-08 20:56 
GeneralRe: Mouse Event in Activex Control Pin
ShilpiP13-Feb-08 22:42
ShilpiP13-Feb-08 22:42 
GeneralRe: Mouse Event in Activex Control Pin
manish.patel13-Feb-08 22:46
manish.patel13-Feb-08 22:46 
GeneralTons of CDialog issue Pin
Llasus13-Feb-08 20:52
Llasus13-Feb-08 20:52 
GeneralRe: Tons of CDialog issue Pin
Rajesh R Subramanian13-Feb-08 21:29
professionalRajesh R Subramanian13-Feb-08 21:29 
GeneralRe: Tons of CDialog issue Pin
Llasus13-Feb-08 23:15
Llasus13-Feb-08 23:15 
GeneralRe: Tons of CDialog issue Pin
Rajesh R Subramanian14-Feb-08 0:02
professionalRajesh R Subramanian14-Feb-08 0:02 
GeneralRe: Tons of CDialog issue Pin
Llasus14-Feb-08 3:43
Llasus14-Feb-08 3:43 
QuestionHow to add Items to a Microsoft 2.0 Combobox control Pin
msr_codeproject13-Feb-08 20:38
msr_codeproject13-Feb-08 20:38 
QuestionCFileDialog Pin
T.RATHA KRISHNAN13-Feb-08 19:04
T.RATHA KRISHNAN13-Feb-08 19:04 
GeneralRe: CFileDialog Pin
Rajesh R Subramanian13-Feb-08 19:40
professionalRajesh R Subramanian13-Feb-08 19:40 
QuestionRe: CFileDialog Pin
T.RATHA KRISHNAN13-Feb-08 19:56
T.RATHA KRISHNAN13-Feb-08 19:56 
GeneralRe: CFileDialog Pin
Rajesh R Subramanian13-Feb-08 20:05
professionalRajesh R Subramanian13-Feb-08 20:05 
GeneralRe: CFileDialog Pin
T.RATHA KRISHNAN13-Feb-08 20:09
T.RATHA KRISHNAN13-Feb-08 20:09 
GeneralRe: CFileDialog Pin
Rajesh R Subramanian13-Feb-08 20:10
professionalRajesh R Subramanian13-Feb-08 20:10 
GeneralRe: CFileDialog Pin
T.RATHA KRISHNAN13-Feb-08 20:11
T.RATHA KRISHNAN13-Feb-08 20:11 
GeneralRe: CFileDialog Pin
Rajesh R Subramanian13-Feb-08 20:14
professionalRajesh R Subramanian13-Feb-08 20:14 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.