472,990 Members | 3,684 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

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

Install COM using ClickOnce

Hi misters,

I have installed my windows application that uses XpdfViewer (a COM
Component for view Pdfs) using ClickOnce.

But I get this error:

GRUPOBACKUP.Administrador.Pantallas.IndexadoAutoma tico.frmIndexadoAutomaticoComun
-ProcesarFicheroPDF. Unable to cast COM object of type 'System.__ComObject'
to interface type 'XpdfViewer.IXpdfViewer'. This operation failed because the
QueryInterface call on the COM component for the interface with IID
'{59DF0320-224E-11D7-BD2E-08004608C318}' failed due to the following error:
Interfaz no compatible (Exception from HRESULT: 0x80004002 (E_NOINTERFACE))..
at XpdfViewer.IXpdfViewer.loadFile(String pdfFileName)

at AxXpdfViewer.AxXpdfViewer.loadFile(String pdfFileName)

at GRUPOBACKUP.Componentes.LibreriaPDF.WrapperUCVisor PDF.LoadFile(String

GRUPOBACKUP.Administrador.Pantallas.IndexadoAutoma tico.frmIndexadoAutomaticoComun.ProcesarFicheroPDF (DoWorkEventArgs e)

If I register manually Xpdfviewer using regsvr32 XpdfviewerCtr.ocx, my
application works fine. But I want and I need install the application using

In documentation of ClickOnce it appears:

Visual Studio 2005 includes a new feature called RegFree COM
(Registration-Free COM). Using RegFree COM, you can deploy an application
that uses a COM component without needing to register it on the user's
machine, so you avoid the notorious problems of "DLL hell." You can even have
multiple versions of the COM component running side by side on the same

Tip: RegFree COM works by automatically generating a manifest from the COM
component's type library and component registration on the developer's
machine. Therefore, while you're not required to install the component on
your users' machines, a copy must be registered on the developer's machine.

To support RegFree COM, all COM components referenced in Visual Studio 2005
have a new Isolated property. If you set Isolated to TRue, then the component
can be deployed through ClickOnce and Visual Studio 2005 will automatically
do all of the work to deploy the COM component onto the target machine
(without needing to register it on the target machine).

As an example, you can drag and drop an OCX control (such as Acrobat's PDF
viewer control) onto your form and, under the References section in Solution
Explorer (click the Show All Files button located second from left at the top
of Solution Explorer), view the properties of the control (AxAcroPDFLib; see
Figure 1-19), and set its Isolated property to TRue.

Figure 1-19. Setting the Isolated property of an OCX control for RegFree COM

In my Solution Explorer, I have two references:

AxInterop.XpdfViewer.dll has not Isolated property

Interop.XpdfViewer.dll has Isolated property and I set to True

Please, mister, any suggestions for install my application using XpdfViewer
with ClickOnce VS 2005 ??

Thanks in advanced, greetings.


Sep 1 '08 #1
2 3518
Well, you can try registry-free COM, but frankly it is not simple to do.

With regular COM, if the tlb/dll isn't already registered at the client
then ClickOnce probably isn't a suitable deployment mechanism. ClickOnce
is designed to be /largely/ isolated and side-effect free, and COM
registrations don't meet this condition. Consider installing with an
installer msi instead.

Sep 1 '08 #2
I should clarify - many of these issues manifest when the referenced COM
library is part of non-trivial client install (for example using
multiple dll/ocx files). In this case, it may be preferable to get the
user to install the necessary files manually via pre-requisites.

Where possible, sourcing 100%-managed utilities is a simpler approach -
but I realise that this is not always possible.

Sep 1 '08 #3

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

Similar topics

by: Bryce K. Nielsen | last post by:
I've been using C# Express and couldn't find anywhere to create an installation project, like I could in VS2003. Is this possible with the "express" version of VS? -BKN
by: Ronald S. Cook | last post by:
I want to configure ClickOnce to install my app for "All users on this PC" vs "Just Me". I.e. I want it to be the default. Anyone? Bueller? Thanks, Ron
by: shamirza | last post by:
Hi All, Why the ClickOnce? earlier we can make setup and place it on server and we are able to download the setup from internet and install it in client mechines throuth web sites (no need to go...
by: deciacco | last post by:
I created a deployment project for my .net 2 application in vs 2005. In the properties of the deployment project, under prerequisites i have "Create setup program to install prerequisite components"...
by: nelmr | last post by:
Hey guys, I wanted to write a bootstrapper to display my EULA prior to installing my click once app. However, it does display it but when I press "Agree" it locks up saying it is trying to install...
by: =?Utf-8?B?ZnJlZGR5?= | last post by:
I would like to uninstall app form both local and remote computers without the user knowing what is going on. I have admin right to all the computers so this is not a problem. Can this be done? ...
by: =?Utf-8?B?Um9nZXIgVHJhbmNoZXo=?= | last post by:
Hello, I would like to know the best way to install an clickonce in .net 3.5 (we use LINQ 8-D) published application on terminal server 2003 Do I have to install it on EVERY user that will use...
by: Rashmi Krishna | last post by:
Hi, I am new to clickonce.My question is, Can i package my application with all necessity files and create a steup.exe using install shield and use that .exe to deploy onto client machine using...
by: =?Utf-8?B?S2VuIExlbWlldXg=?= | last post by:
My clickonce app fails when the install button on the publish.htm page is clicked. User is prompted with a "Cannot Start Application" dialog. Details provided from the dialog are: PLATFORM...
by: Aliciasmith | last post by:
In an age dominated by smartphones, having a mobile app for your business is no longer an option; it's a necessity. Whether you're a startup or an established enterprise, finding the right mobile app...
by: giovanniandrean | last post by:
The energy model is structured as follows and uses excel sheets to give input data: 1-Utility.py contains all the functions needed to calculate the variables and other minor things (mentions...
by: NeoPa | last post by:
Hello everyone. I find myself stuck trying to find the VBA way to get Access to create a PDF of the currently-selected (and open) object (Form or Report). I know it can be done by selecting :...
by: NeoPa | last post by:
Introduction For this article I'll be using a very simple database which has Form (clsForm) & Report (clsReport) classes that simply handle making the calling Form invisible until the Form, or all...
by: Teri B | last post by:
Hi, I have created a sub-form Roles. In my course form the user selects the roles assigned to the course. 0ne-to-many. One course many roles. Then I created a report based on the Course form and...
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 1 Nov 2023 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM) Please note that the UK and Europe revert to winter time on...
by: nia12 | last post by:
Hi there, I am very new to Access so apologies if any of this is obvious/not clear. I am creating a data collection tool for health care employees to complete. It consists of a number of...
by: NeoPa | last post by:
Introduction For this article I'll be focusing on the Report (clsReport) class. This simply handles making the calling Form invisible until all of the Reports opened by it have been closed, when it...
by: GKJR | last post by:
Does anyone have a recommendation to build a standalone application to replace an Access database? I have my bookkeeping software I developed in Access that I would like to make available to other...

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.