Hi,

We have a .NET assembly with COM controls inside. We need to register this
control in Internet Explorer. We have a html page to use this control:
<html>
<body>
<OBJECT id="control1"
classid="CLSID:B5131ECD-CCEB-4f2f-9632-E28E085A1C68"
codebase="setup.msi">
</OBJECT>
</body>
</html>

If we had not managed COM control then we would use CAB file and .ini file
to register all components inside CAB.
We'd read that with managed asembleys we should use .msi installer file
instead of CAB. We'd created this msi. And if we installing it manualy(by
double clicking on it) then we can use this controls. But if msi runed by
iexplorer when page is opened, then COM controls are not registerd.

Question: What should we do to automatically register COM controls(writen on
.NET) when HTML page is opening?

RE: Install com from .msi or... by lukezhan

lukezhan
Sun Jan 14 21:37:25 CST 2007

Hello,

You may first take a look at this article:

How To Install ActiveX Controls in Internet Explorer Using the Active
Directory
http://support.microsoft.com/default.aspx/kb/280579

It lists the exact steps to install an ActiveX control with MSI code base.
You may first try this step to see if it will work.

Sincerely,

Luke Zhang

Microsoft Online Community Support
==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.




Re: Install com from .msi or... by Mercdev

Mercdev
Mon Jan 15 02:53:02 CST 2007

Hello,

I've read this article before. It didn't help. When I ran msi manualy (not
from explorer) it is working, but when i ran it from iexplorer( as code
base) it is not registering COM objects.

"Luke Zhang [MSFT]" <lukezhan@online.microsoft.com> wrote in message
news:zC2OBaFOHHA.2304@TK2MSFTNGHUB02.phx.gbl...
> Hello,
>
> You may first take a look at this article:
>
> How To Install ActiveX Controls in Internet Explorer Using the Active
> Directory
> http://support.microsoft.com/default.aspx/kb/280579
>
> It lists the exact steps to install an ActiveX control with MSI code base.
> You may first try this step to see if it will work.
>
> Sincerely,
>
> Luke Zhang
>
> Microsoft Online Community Support
> ==================================================
> Get notification to my posts through email? Please refer to
> http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
> ications.
>
> Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
> where an initial response from the community or a Microsoft Support
> Engineer within 1 business day is acceptable. Please note that each follow
> up response may take approximately 2 business days as the support
> professional working with you may need further investigation to reach the
> most efficient resolution. The offering is not appropriate for situations
> that require urgent, real-time or phone-based interactions or complex
> project analysis and dump analysis issues. Issues of this nature are best
> handled working with a dedicated Microsoft Support Engineer by contacting
> Microsoft Customer Support Services (CSS) at
> http://msdn.microsoft.com/subscriptions/support/default.aspx.
> ==================================================
>
> This posting is provided "AS IS" with no warranties, and confers no
> rights.
>
>
>



Re: Install com from .msi or... by lukezhan

lukezhan
Tue Jan 16 01:21:52 CST 2007

Hello,

Does the client have MS Installer installed? With MSI codebased, MS
Installer is required on the clients. Also, in order to make the control
visible under Internet Options -> Temporary Internet Files -> Settings ->
View objects, there are certain registry keys that need to be populated:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
Units]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
Units\{C4DD002B-53B1-11D2-AA17-00104B0753B3}]
"SystemComponent"=dword:00000000
"Installer"="MSICD"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
Units\{C4DD002B-53B1-11D2-AA17-00104B0753B3}\Contains]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
Units\{C4DD002B-53B1-11D2-AA17-00104B0753B3}\Contains\Files]
"C:\\WINDOWS\\Downloaded Program Files\\AsynchGrid.ocx"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
Units\{C4DD002B-53B1-11D2-AA17-00104B0753B3}\DownloadInformation]
"CODEBASE"="setup.msi"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
Units\{C4DD002B-53B1-11D2-AA17-00104B0753B3}\InstalledVersion]
@="9,6,0,133"

Note that in the above keys GUID {C4DD002B-53B1-11D2-AA17-00104B0753B3} is
for control and this needs to be replaced by the GUID of the control that
needs to be deployed

Sincerely,

Luke Zhang

Microsoft Online Community Support
==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.




Re: Install com from .msi or... by Mercdev

Mercdev
Tue Jan 16 02:20:19 CST 2007

Hello,

Yes, MS Installer has installed, register has all keys you listed and it is
not working.
But I have some differences with key:

> [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
> Units\{C4DD002B-53B1-11D2-AA17-00104B0753B3}\Contains\Files]
> "C:\\WINDOWS\\Downloaded Program Files\\AsynchGrid.ocx"=""

on my side it looks like:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
Units\{83D65796-DE77-4a09-A63F-FB9B1B51E2C3}\Contains\Files]
"C:\WINDOWS\Downloaded Program Files\websetup.msi"=""

I suppose that if there will be myconrol.dll instead of websetup.msi it
would be work.

From your example I saw that you used unmanged ActiveX control -
AsynchGrid.ocx, but I need to install managed assembley.


"Luke Zhang [MSFT]" <lukezhan@online.microsoft.com> wrote in message
news:QuCNG8TOHHA.2304@TK2MSFTNGHUB02.phx.gbl...
> Hello,
>
> Does the client have MS Installer installed? With MSI codebased, MS
> Installer is required on the clients. Also, in order to make the control
> visible under Internet Options -> Temporary Internet Files -> Settings ->
> View objects, there are certain registry keys that need to be populated:
>
> [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
> Units]
>
> [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
> Units\{C4DD002B-53B1-11D2-AA17-00104B0753B3}]
> "SystemComponent"=dword:00000000
> "Installer"="MSICD"
>
> [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
> Units\{C4DD002B-53B1-11D2-AA17-00104B0753B3}\Contains]
>
> [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
> Units\{C4DD002B-53B1-11D2-AA17-00104B0753B3}\Contains\Files]
> "C:\\WINDOWS\\Downloaded Program Files\\AsynchGrid.ocx"=""
>
> [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
> Units\{C4DD002B-53B1-11D2-AA17-00104B0753B3}\DownloadInformation]
> "CODEBASE"="setup.msi"
>
> [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution
> Units\{C4DD002B-53B1-11D2-AA17-00104B0753B3}\InstalledVersion]
> @="9,6,0,133"
>
> Note that in the above keys GUID {C4DD002B-53B1-11D2-AA17-00104B0753B3} is
> for control and this needs to be replaced by the GUID of the control that
> needs to be deployed
>
> Sincerely,
>
> Luke Zhang
>
> Microsoft Online Community Support
> ==================================================
> Get notification to my posts through email? Please refer to
> http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
> ications.
>
> Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
> where an initial response from the community or a Microsoft Support
> Engineer within 1 business day is acceptable. Please note that each follow
> up response may take approximately 2 business days as the support
> professional working with you may need further investigation to reach the
> most efficient resolution. The offering is not appropriate for situations
> that require urgent, real-time or phone-based interactions or complex
> project analysis and dump analysis issues. Issues of this nature are best
> handled working with a dedicated Microsoft Support Engineer by contacting
> Microsoft Customer Support Services (CSS) at
> http://msdn.microsoft.com/subscriptions/support/default.aspx.
> ==================================================
>
> This posting is provided "AS IS" with no warranties, and confers no
> rights.
>
>
>



Re: Install com from .msi or... by lukezhan

lukezhan
Tue Jan 16 21:11:50 CST 2007

Hello,

Would you please let me know how the COM control locates in your .NET
assembly? I may try it on my side to see if I can make it work. And, did
you test this with a local administrator account on the client and the
server is in the "trusted sites"?

Sincerely,

Luke Zhang

Microsoft Online Community Support
==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.




Re: Install com from .msi or... by Mercdev

Mercdev
Tue Jan 16 23:56:26 CST 2007

Hello,

I've created custom UserControl with VS wizard and add Guid attribute, thus
code looks like:

[Guid("AA0A5084-5DB5-4e35-B4BF-9EC4CA3EB1B3")]
public class MyUserControl : UserControl
{
...
}

This control is working in IExplorer when I manifestly register it (with
regasm.exe or if I manualy write to registry to HKEY_CLASSES_ROOT). Also
I've created MSI installer file which installs this control. After I ran
this msi I can use control in IExplorer. But when this msi is launched from
IExplorer as codebase of object tag control is not installing. I've tested
this under administrative accounts and is in the "trusted sited".


"Luke Zhang [MSFT]" <lukezhan@online.microsoft.com> wrote in message
news:1Eg9BVeOHHA.2024@TK2MSFTNGHUB02.phx.gbl...
> Hello,
>
> Would you please let me know how the COM control locates in your .NET
> assembly? I may try it on my side to see if I can make it work. And, did
> you test this with a local administrator account on the client and the
> server is in the "trusted sites"?
>
> Sincerely,
>
> Luke Zhang
>
> Microsoft Online Community Support
> ==================================================
> Get notification to my posts through email? Please refer to
> http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
> ications.
>
> Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
> where an initial response from the community or a Microsoft Support
> Engineer within 1 business day is acceptable. Please note that each follow
> up response may take approximately 2 business days as the support
> professional working with you may need further investigation to reach the
> most efficient resolution. The offering is not appropriate for situations
> that require urgent, real-time or phone-based interactions or complex
> project analysis and dump analysis issues. Issues of this nature are best
> handled working with a dedicated Microsoft Support Engineer by contacting
> Microsoft Customer Support Services (CSS) at
> http://msdn.microsoft.com/subscriptions/support/default.aspx.
> ==================================================
>
> This posting is provided "AS IS" with no warranties, and confers no
> rights.
>
>
>



Re: Install com from .msi or... by lukezhan

lukezhan
Thu Jan 18 00:57:11 CST 2007

Hello,

From the code, it is actual an winform control. For such a control, we can
embed it in HTML/ASPX page directly, not necessary to convert it to an
ActiveX control first. And, if we use the Winform control directly, no
codebase is needed, IE will download the assembly automatically. Here are
an article on this:

http://www.codeproject.com/cs/miscctrl/htmlwincontrol.asp

and a wecast:

http://www.only4gurus.com/v3/preview.asp?resource=7521

Hope this help,

Sincerely,

Luke Zhang

Microsoft Online Community Support
==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.




Re: Install com from .msi or... by Mercdev

Mercdev
Thu Jan 18 07:49:52 CST 2007

Hello,

Yes I know that I can directly use winform controls in IE, I've read this
articles before.
But problem with this approach is that it is neccessary to configure
security permissions for all used assemblies (and as I know all
configurations should be implemented manually on every machine).
And because this controls used only in intranet we want to reduce deployment
costs(that is why we want to keep ActiveX) .

"Luke Zhang [MSFT]" <lukezhan@online.microsoft.com> wrote in message
news:6GMJm3sOHHA.2300@TK2MSFTNGHUB02.phx.gbl...
> Hello,
>
> From the code, it is actual an winform control. For such a control, we can
> embed it in HTML/ASPX page directly, not necessary to convert it to an
> ActiveX control first. And, if we use the Winform control directly, no
> codebase is needed, IE will download the assembly automatically. Here are
> an article on this:
>
> http://www.codeproject.com/cs/miscctrl/htmlwincontrol.asp
>
> and a wecast:
>
> http://www.only4gurus.com/v3/preview.asp?resource=7521
>
> Hope this help,
>
> Sincerely,
>
> Luke Zhang
>
> Microsoft Online Community Support
> ==================================================
> Get notification to my posts through email? Please refer to
> http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
> ications.
>
> Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
> where an initial response from the community or a Microsoft Support
> Engineer within 1 business day is acceptable. Please note that each follow
> up response may take approximately 2 business days as the support
> professional working with you may need further investigation to reach the
> most efficient resolution. The offering is not appropriate for situations
> that require urgent, real-time or phone-based interactions or complex
> project analysis and dump analysis issues. Issues of this nature are best
> handled working with a dedicated Microsoft Support Engineer by contacting
> Microsoft Customer Support Services (CSS) at
> http://msdn.microsoft.com/subscriptions/support/default.aspx.
> ==================================================
>
> This posting is provided "AS IS" with no warranties, and confers no
> rights.
>
>
>



Re: Install com from .msi or... by lukezhan

lukezhan
Fri Jan 19 01:44:49 CST 2007

Hello,

Even we have export such a .NET assembly as a COM control, we still need to
configure for the code access security, it is actually still an .NET
application. All .NET code with be controled by CAS. If you have concern
about security permissions, I suggest you may take a look at Code Access
Security Policy Tool (Caspol.exe) :

http://msdn2.microsoft.com/en-us/library/cb6t8dtz(VS.80).aspx

You can use this tool to set security permission on every client, for
example, create a full trusted code group for your server's url, so all
code from your server will be full trusted.

Sincerely,

Luke Zhang

Microsoft Online Community Support
==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.




Re: Install com from .msi or... by Alexander

Alexander
Fri Jan 19 09:13:54 CST 2007

Hello,

Thank you for your response.
Any way we've decided to create installer and use MS Updater Block for
our application instead downloading and installing ActiveX from "codebase".

> Hello,
>
> Even we have export such a .NET assembly as a COM control, we still need to
> configure for the code access security, it is actually still an .NET
> application. All .NET code with be controled by CAS. If you have concern
> about security permissions, I suggest you may take a look at Code Access
> Security Policy Tool (Caspol.exe) :
>
> http://msdn2.microsoft.com/en-us/library/cb6t8dtz(VS.80).aspx
>
> You can use this tool to set security permission on every client, for
> example, create a full trusted code group for your server's url, so all
> code from your server will be full trusted.
>
> Sincerely,
>
> Luke Zhang
>
> Microsoft Online Community Support
> ==================================================
> Get notification to my posts through email? Please refer to
> http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
> ications.
>
> Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
> where an initial response from the community or a Microsoft Support
> Engineer within 1 business day is acceptable. Please note that each follow
> up response may take approximately 2 business days as the support
> professional working with you may need further investigation to reach the
> most efficient resolution. The offering is not appropriate for situations
> that require urgent, real-time or phone-based interactions or complex
> project analysis and dump analysis issues. Issues of this nature are best
> handled working with a dedicated Microsoft Support Engineer by contacting
> Microsoft Customer Support Services (CSS) at
> http://msdn.microsoft.com/subscriptions/support/default.aspx.
> ==================================================
>
> This posting is provided "AS IS" with no warranties, and confers no rights.
>
>
>

Re: Install com from .msi or... by lukezhan

lukezhan
Mon Jan 22 01:52:08 CST 2007

Hello,

Thank you for update. In .NET 2.0 Updater application block has been
upgrade as ClickOnce. You may check these article for ClickOnce:

Deploy and Update Your Smart Client Projects Using a Central Server
http://msdn.microsoft.com/msdnmag/issues/04/05/ClickOnce/

ClickOnce Deployment
http://msdn2.microsoft.com/en-us/library/t71a733d(VS.80).aspx

If there is any further question for Updater application block or
ClickOnce, please feel free to let us know.

Sincerely,

Luke Zhang

Microsoft Online Community Support
==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.