473,398 Members | 2,343 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,398 software developers and data experts.

Merging ActiveX Control

Hi Every body,
I am currently working in aproject where I am stuck in merging an
ActiveX control (*.ocx) file into a managed Class Library (*.dll). I want to
hide the ActiveX Control in this managed Dll, so that even when things are
deployed I don't wanna see two files, but only 1 file which is the dll, and
it would contain within it, the other ocx file.

Is this possible? If yes, then how can I do something like this, I tried to
use ILMerge, but it sounds that it doesn't do what I wanted to have..

Thanks
Khaled Hussein
Apr 1 '06 #1
7 2174


"Khaled Hussein" <kh************@gmail.com> wrote in message
news:OF**************@TK2MSFTNGP10.phx.gbl...
| Hi Every body,
| I am currently working in aproject where I am stuck in merging an
| ActiveX control (*.ocx) file into a managed Class Library (*.dll). I want
to
| hide the ActiveX Control in this managed Dll, so that even when things are
| deployed I don't wanna see two files, but only 1 file which is the dll,
and
| it would contain within it, the other ocx file.
|
| Is this possible? If yes, then how can I do something like this, I tried
to
| use ILMerge, but it sounds that it doesn't do what I wanted to have..
|
| Thanks
| Khaled Hussein
|
|

No, activeX control libraries (DLL's or OCX) locations are registered in the
COM DB (the component regisry) such that they can be loaded by the COM
infrastructure, COM is not designed to load them from anything else.
I don't see why you need this,really.

Willy.
Apr 1 '06 #2
Willy,
First, Thanks for your concern..
Second, OK, if I can't hide it inside my dll, then I would have another
question .. is there any way to Register this COM programatically from my
application? (I don't mean deployment stuff) .. but I would need a function
for example to register this COM object, and then these other functions
start using it..

Is it possible to do it?
Thanks
Khaled Hussein

"Willy Denoyette [MVP]" <wi*************@telenet.be> wrote in message
news:uH**************@TK2MSFTNGP09.phx.gbl...


"Khaled Hussein" <kh************@gmail.com> wrote in message
news:OF**************@TK2MSFTNGP10.phx.gbl...
| Hi Every body,
| I am currently working in aproject where I am stuck in merging an
| ActiveX control (*.ocx) file into a managed Class Library (*.dll). I
want
to
| hide the ActiveX Control in this managed Dll, so that even when things
are
| deployed I don't wanna see two files, but only 1 file which is the dll,
and
| it would contain within it, the other ocx file.
|
| Is this possible? If yes, then how can I do something like this, I tried
to
| use ILMerge, but it sounds that it doesn't do what I wanted to have..
|
| Thanks
| Khaled Hussein
|
|

No, activeX control libraries (DLL's or OCX) locations are registered in
the
COM DB (the component regisry) such that they can be loaded by the COM
infrastructure, COM is not designed to load them from anything else.
I don't see why you need this,really.

Willy.

Apr 1 '06 #3
hi
i need ur help khalid since u used ilmerge .

i have a problem i have one windows service which i am installing from
one other exe(in process.start simply using cmd.exe and installutil)
now i want to combine these both exes into one for deployment.
see tell me how i will use path for the windows service when i will
embedd it into the one whole exe(in cmd.exe installutil)
can i give path of the exe which i am itself merging into it .
i meam how ilmerge will merge both
shan

Apr 1 '06 #4
I don't know much about ILMerge, I was just looking for specific
functionality indeed. But I don't think this applies to webservices.

"shan" <sh*******@gmail.com> wrote in message
news:11**********************@u72g2000cwu.googlegr oups.com...
hi
i need ur help khalid since u used ilmerge .

i have a problem i have one windows service which i am installing from
one other exe(in process.start simply using cmd.exe and installutil)
now i want to combine these both exes into one for deployment.
see tell me how i will use path for the windows service when i will
embedd it into the one whole exe(in cmd.exe installutil)
can i give path of the exe which i am itself merging into it .
i meam how ilmerge will merge both
shan

Apr 1 '06 #5
Not sure what kind of component you are talking about, but an OCX is an
ActiveX control type, that means it's instantiated with it's control
container (a Windows Form?), that means that it must be registered before
you can (successfully) create an instance of the control container. That
would mean that you need to check the registry (query the CLSID or ProgID)
for the component and register it when not found, registering can be done by
calling Process.Start and shell-out Regsvr32.exe, just make sure that you
need to specify the full path of the ocx file.
I must say that I hate this whole idea though, you should never install
application components without providing an installer/uninstaller.

Willy.

"Khaled Hussein" <kh************@gmail.com> wrote in message
news:uv**************@TK2MSFTNGP14.phx.gbl...
| Willy,
| First, Thanks for your concern..
| Second, OK, if I can't hide it inside my dll, then I would have another
| question .. is there any way to Register this COM programatically from my
| application? (I don't mean deployment stuff) .. but I would need a
function
| for example to register this COM object, and then these other functions
| start using it..
|
| Is it possible to do it?
| Thanks
| Khaled Hussein
|
| "Willy Denoyette [MVP]" <wi*************@telenet.be> wrote in message
| news:uH**************@TK2MSFTNGP09.phx.gbl...
| >
| >
| > "Khaled Hussein" <kh************@gmail.com> wrote in message
| > news:OF**************@TK2MSFTNGP10.phx.gbl...
| > | Hi Every body,
| > | I am currently working in aproject where I am stuck in merging an
| > | ActiveX control (*.ocx) file into a managed Class Library (*.dll). I
| > want
| > to
| > | hide the ActiveX Control in this managed Dll, so that even when things
| > are
| > | deployed I don't wanna see two files, but only 1 file which is the
dll,
| > and
| > | it would contain within it, the other ocx file.
| > |
| > | Is this possible? If yes, then how can I do something like this, I
tried
| > to
| > | use ILMerge, but it sounds that it doesn't do what I wanted to have..
| > |
| > | Thanks
| > | Khaled Hussein
| > |
| > |
| >
| > No, activeX control libraries (DLL's or OCX) locations are registered in
| > the
| > COM DB (the component regisry) such that they can be loaded by the COM
| > infrastructure, COM is not designed to load them from anything else.
| > I don't see why you need this,really.
| >
| > Willy.
| >
| >
|
|
Apr 1 '06 #6
The only option that I can think of which might be a better solution is
to use registration-free COM, which would prevent the need for registering
the component. The following article shows how to do it:

http://msdn.microsoft.com/msdnmag/is...M/default.aspx

Hope this helps.

--
- Nicholas Paldino [.NET/C# MVP]
- mv*@spam.guard.caspershouse.com

"Willy Denoyette [MVP]" <wi*************@telenet.be> wrote in message
news:uo**************@TK2MSFTNGP14.phx.gbl...
Not sure what kind of component you are talking about, but an OCX is an
ActiveX control type, that means it's instantiated with it's control
container (a Windows Form?), that means that it must be registered before
you can (successfully) create an instance of the control container. That
would mean that you need to check the registry (query the CLSID or ProgID)
for the component and register it when not found, registering can be done
by
calling Process.Start and shell-out Regsvr32.exe, just make sure that you
need to specify the full path of the ocx file.
I must say that I hate this whole idea though, you should never install
application components without providing an installer/uninstaller.

Willy.

"Khaled Hussein" <kh************@gmail.com> wrote in message
news:uv**************@TK2MSFTNGP14.phx.gbl...
| Willy,
| First, Thanks for your concern..
| Second, OK, if I can't hide it inside my dll, then I would have another
| question .. is there any way to Register this COM programatically from
my
| application? (I don't mean deployment stuff) .. but I would need a
function
| for example to register this COM object, and then these other functions
| start using it..
|
| Is it possible to do it?
| Thanks
| Khaled Hussein
|
| "Willy Denoyette [MVP]" <wi*************@telenet.be> wrote in message
| news:uH**************@TK2MSFTNGP09.phx.gbl...
| >
| >
| > "Khaled Hussein" <kh************@gmail.com> wrote in message
| > news:OF**************@TK2MSFTNGP10.phx.gbl...
| > | Hi Every body,
| > | I am currently working in aproject where I am stuck in merging an
| > | ActiveX control (*.ocx) file into a managed Class Library (*.dll). I
| > want
| > to
| > | hide the ActiveX Control in this managed Dll, so that even when
things
| > are
| > | deployed I don't wanna see two files, but only 1 file which is the
dll,
| > and
| > | it would contain within it, the other ocx file.
| > |
| > | Is this possible? If yes, then how can I do something like this, I
tried
| > to
| > | use ILMerge, but it sounds that it doesn't do what I wanted to
have..
| > |
| > | Thanks
| > | Khaled Hussein
| > |
| > |
| >
| > No, activeX control libraries (DLL's or OCX) locations are registered
in
| > the
| > COM DB (the component regisry) such that they can be loaded by the COM
| > infrastructure, COM is not designed to load them from anything else.
| > I don't see why you need this,really.
| >
| > Willy.
| >
| >
|
|

Apr 1 '06 #7
Could be an option, but there are a lot of restrictions, it's only available
on XP and higher, and it depends on the type of application, for instance if
the control is to be hosted in the Webbrowser control it won't work.

Willy.

"Nicholas Paldino [.NET/C# MVP]" <mv*@spam.guard.caspershouse.com> wrote in
message news:uY****************@TK2MSFTNGP14.phx.gbl...
| The only option that I can think of which might be a better solution is
| to use registration-free COM, which would prevent the need for registering
| the component. The following article shows how to do it:
|
| http://msdn.microsoft.com/msdnmag/is...M/default.aspx
|
| Hope this helps.
|
| --
| - Nicholas Paldino [.NET/C# MVP]
| - mv*@spam.guard.caspershouse.com
|
| "Willy Denoyette [MVP]" <wi*************@telenet.be> wrote in message
| news:uo**************@TK2MSFTNGP14.phx.gbl...
| > Not sure what kind of component you are talking about, but an OCX is an
| > ActiveX control type, that means it's instantiated with it's control
| > container (a Windows Form?), that means that it must be registered
before
| > you can (successfully) create an instance of the control container. That
| > would mean that you need to check the registry (query the CLSID or
ProgID)
| > for the component and register it when not found, registering can be
done
| > by
| > calling Process.Start and shell-out Regsvr32.exe, just make sure that
you
| > need to specify the full path of the ocx file.
| > I must say that I hate this whole idea though, you should never install
| > application components without providing an installer/uninstaller.
| >
| > Willy.
| >
| >
| >
| > "Khaled Hussein" <kh************@gmail.com> wrote in message
| > news:uv**************@TK2MSFTNGP14.phx.gbl...
| > | Willy,
| > | First, Thanks for your concern..
| > | Second, OK, if I can't hide it inside my dll, then I would have
another
| > | question .. is there any way to Register this COM programatically from
| > my
| > | application? (I don't mean deployment stuff) .. but I would need a
| > function
| > | for example to register this COM object, and then these other
functions
| > | start using it..
| > |
| > | Is it possible to do it?
| > | Thanks
| > | Khaled Hussein
| > |
| > | "Willy Denoyette [MVP]" <wi*************@telenet.be> wrote in message
| > | news:uH**************@TK2MSFTNGP09.phx.gbl...
| > | >
| > | >
| > | > "Khaled Hussein" <kh************@gmail.com> wrote in message
| > | > news:OF**************@TK2MSFTNGP10.phx.gbl...
| > | > | Hi Every body,
| > | > | I am currently working in aproject where I am stuck in merging
an
| > | > | ActiveX control (*.ocx) file into a managed Class Library (*.dll).
I
| > | > want
| > | > to
| > | > | hide the ActiveX Control in this managed Dll, so that even when
| > things
| > | > are
| > | > | deployed I don't wanna see two files, but only 1 file which is the
| > dll,
| > | > and
| > | > | it would contain within it, the other ocx file.
| > | > |
| > | > | Is this possible? If yes, then how can I do something like this, I
| > tried
| > | > to
| > | > | use ILMerge, but it sounds that it doesn't do what I wanted to
| > have..
| > | > |
| > | > | Thanks
| > | > | Khaled Hussein
| > | > |
| > | > |
| > | >
| > | > No, activeX control libraries (DLL's or OCX) locations are
registered
| > in
| > | > the
| > | > COM DB (the component regisry) such that they can be loaded by the
COM
| > | > infrastructure, COM is not designed to load them from anything else.
| > | > I don't see why you need this,really.
| > | >
| > | > Willy.
| > | >
| > | >
| > |
| > |
| >
| >
|
|
Apr 1 '06 #8

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: wang xiaoyu | last post by:
Hello: i want use activex in wxpython program,but when i use MakeActiveXClass an exception occurs. this is my source code dealing the DICOM ocx.I must note that in this program "hwtxcontrol" is...
2
by: Fie Fie Niles | last post by:
This one XP machine (with IE 6) is having a problem viewing any ActiveX controls (created on VB6) on the Internet Explorer browser. I put the same ActiveX control in a VB program, and when I run...
0
by: Naresh Narwani | last post by:
Problem Summary: Merging two different web applications into one create a problem for User Controls. Reason for merging two different Web Application: To share non serializable object...
3
by: Jeffery Franzen | last post by:
Anyone know where the documentation is regarding Activex controls in asp web forms? I'm using VS.NET 2002 enterprise and am trying to use Activex controls in vb.net web form app. I do the add...
3
by: Weston Fryatt | last post by:
Simple question I hope.... How do I send data to and from an ASP.Net (server side) web page to a ActiveX Control (client side) embedded in a web browser??? What I need to do, is I have image...
7
by: Jarod_24 | last post by:
I just downloaded a activex control that was written in C# and tried to view it on my PDA's Internet Explorer. At my regular PC it displayed just fine, but nothing showed up on the pda. Do...
1
by: Jayender | last post by:
Hi, I have an ActiveX control (to display the Images),I have added the reference of that in my web based applicaton .and added the ocx in my tool bar , but the viewer (activex component- ocx ) is...
6
by: Budhi Saputra Prasetya | last post by:
Hi All, I'm trying to display .NET Custom Control (created using Inherited Control) on an ASPX page, but no luck. I already registered the Control to Global Assembly Cache through .NET Framework...
6
by: hufaunder | last post by:
I have an ActiveX component that I want to use in a library that I am writing. As a first test I used the ActiveX component in a windows form application. Adding the component created: Ax.dll...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.