Click here to Skip to main content
15,890,282 members
Home / Discussions / COM
   

COM

 
GeneralRe: doubt on Activex control Pin
sunita ramesh18-Jul-06 1:23
sunita ramesh18-Jul-06 1:23 
Questionassigning an accelerator for an explorer bar (CATID - INFOBAND) and making it default view Pin
alianyn14-Jul-06 10:40
alianyn14-Jul-06 10:40 
AnswerRe: if anyone is ever interested in how i eventually did it Pin
alianyn18-Jul-06 3:45
alianyn18-Jul-06 3:45 
QuestionComponent Services Info Pin
vertigo_one14-Jul-06 7:04
vertigo_one14-Jul-06 7:04 
Questionproblem with the creation of an instance of ActiveX at runtime and with the invocation of a method from this component Pin
masanne13-Jul-06 23:58
masanne13-Jul-06 23:58 
QuestionCreate ActiveX from dialog used other ActiveX Pin
majco33313-Jul-06 22:40
majco33313-Jul-06 22:40 
QuestionCOM concept help - order of functions or parameters Pin
J.B.13-Jul-06 21:43
J.B.13-Jul-06 21:43 
AnswerRe: COM concept help - order of functions or parameters Pin
Steve S13-Jul-06 22:05
Steve S13-Jul-06 22:05 
Yes. If you change the order of the functions in the declaration, their positions in the interface will shift. When you derive from IUnknown, for example, you rely on the compiler putting in QueryInterface as func#0, AddRef as func#1, and Release as func#2.

When you declare the first version, Fx is func#3, and Fy is func#4. By rewriting as the second version, the positions of Fx and Fy are swapped.

This matters because COM is a binary standard, for cross-language use. If you have a client that calls methods on this interface, it is quite likely doing so by locating the function in a table. If you change the order, the table is invalid, and a call to Fx by the client would be a call to Fy instead. Replace the names 'Fx' with 'Save' and 'Fy' with 'Delete' and you'll see why this is important.

You could get around this problem by recompiling all clients, but if you haven't got source for all of them, you wouldn't be able to do this, of course.

Similarly, if you alter the order of parameters (or types, or add/remove parameters), again, this alters the shape of the interface, so you should use a new one.

Of course, while you're developing the first version, it's quite conceivable that halfway through, you'll need to change the interface, and within reason, you're able to do that without generating a new UUID (or IID) for it, but as soon as you've published it (which in general terms means installed on other than development kit), the interface should be regarded as immutable.

Steve S
Developer for hire
GeneralRe: COM concept help - order of functions or parameters Pin
J.B.13-Jul-06 22:16
J.B.13-Jul-06 22:16 
QuestionHow to create object by Knowing Interface only Pin
kanduripavan13-Jul-06 1:40
kanduripavan13-Jul-06 1:40 
AnswerRe: How to create object by Knowing Interface only Pin
Alex Hazanov13-Jul-06 10:01
Alex Hazanov13-Jul-06 10:01 
GeneralRe: How to create object by Knowing Interface only Pin
kanduripavan13-Jul-06 18:50
kanduripavan13-Jul-06 18:50 
GeneralRe: How to create object by Knowing Interface only Pin
Steve S13-Jul-06 22:09
Steve S13-Jul-06 22:09 
GeneralRe: How to create object by Knowing Interface only Pin
kanduripavan14-Jul-06 0:03
kanduripavan14-Jul-06 0:03 
GeneralRe: How to create object by Knowing Interface only Pin
Steve S16-Jul-06 22:51
Steve S16-Jul-06 22:51 
QuestionModifying POST data in a BHO Pin
mdave12-Jul-06 9:27
mdave12-Jul-06 9:27 
QuestionIIDFromString Failing ! Pin
Malli_S11-Jul-06 21:38
Malli_S11-Jul-06 21:38 
AnswerRe: IIDFromString Failing ! Pin
Hans Ruck12-Jul-06 2:54
Hans Ruck12-Jul-06 2:54 
GeneralRe: IIDFromString Failing ! Pin
Malli_S12-Jul-06 18:33
Malli_S12-Jul-06 18:33 
GeneralRe: IIDFromString Failing ! [modified] Pin
Hans Ruck12-Jul-06 20:53
Hans Ruck12-Jul-06 20:53 
Questiondeveloping COM Application Pin
peter rankel11-Jul-06 21:03
peter rankel11-Jul-06 21:03 
AnswerRe: developing COM Application Pin
kumarprabhakar7411-Jul-06 22:22
kumarprabhakar7411-Jul-06 22:22 
Questioncallllllllllllllllllllllll Pin
arun.m11-Jul-06 21:03
arun.m11-Jul-06 21:03 
AnswerRe: callllllllllllllllllllllll Pin
Malli_S11-Jul-06 21:43
Malli_S11-Jul-06 21:43 
QuestionC# HELP Web service can not get array of int, or byte from COM object Pin
guocang11-Jul-06 11:33
guocang11-Jul-06 11:33 

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.