Print Page | Close Window

Distribution / OCX / COM

Printed From: Codejock Forums
Category: Codejock Products
Forum Name: Suite Pro
Forum Description: Topics Related to Codejock Suite Pro
URL: http://forum.codejock.com/forum_posts.asp?TID=4154
Printed Date: 17 June 2024 at 6:27am
Software Version: Web Wiz Forums 12.04 - http://www.webwizforums.com


Topic: Distribution / OCX / COM
Posted By: apuhjee
Subject: Distribution / OCX / COM
Date Posted: 07 May 2006 at 9:58am
Question for the group...

How are you all handling distribution / installation of your OCX files?

  • Maybe I'm using InstallShield incorrectly
  • Maybe I don't understand enough about OCX / COM
  • Maybe this is the COM distribution HELL that I've heard so much about


Because...

I'm limited to one machine right now for all tasks - including development / testing / debugging / web surfing / idle procrastination / etc... When I test my install, the uninstall feature completely removes all references to the Codejock OCX files from the registry - effectly removing them from the dev environment as well (Visual Studio 2003 / 2005)

Ok - so let's say I work a little smarter and tell InstallShield to not remove the registry entries during uninstall... what's to say that my app is the only one using Codejock on the target machine? It may be my imagination, but I'm seeing A LOT of apps lately that scream "Codejock". Granted - the big guys use the MFC code rather than the COM stuff... but what happens when an uninstall occurs with an app other than mine?

Should I worry that, at any moment, the entire gui framework that my app is built on might disappear into thin air?

No, no, no... I must be doing something wrong. Right?

Regards ~ jp



Replies:
Posted By: sserge
Date Posted: 07 May 2006 at 2:04pm
Hi,

1) Uninstall should not silently remove components which could be "shared" like Codejock. Components should be whether left as is, or uninstall would specifically ask user about explicit removing of the component.

2) To avoid problems when someone else removed a shared component which you may need (like Codejock ;), add a piece of code on the application start to check whether all components exist and properly accessible. If not, just ask a user to reinstall your application.

--
WBR,
Serge


Posted By: apuhjee
Date Posted: 07 May 2006 at 2:22pm
Hi Serge -
Thanks for the response. Are there any "best practice" approaches for suggestion #2?

Cheers ~ jp

-------------
I like mathematics because it is not human and has nothing particular
to do with this planet or with the whole accidental universe — because,
like Spinoza's God, it won't love us in return.


Posted By: sserge
Date Posted: 08 May 2006 at 7:07am
For #2 -- depends on your programming language, but generally you call CreateObject(TheComponent) or so, inside a try/catch block. If it is failed, then no sense to continue and you can fire a corresponding message.

--
WBR,
Serge


Posted By: RobinG
Date Posted: 09 May 2006 at 11:55am

Originally posted by apuhjee apuhjee wrote:


I'm limited to one machine right now for all tasks - including development / testing / debugging / web surfing / idle procrastination / etc... When I test my install, the uninstall feature completely removes all references to the Codejock OCX files from the registry - effectly removing them from the dev environment as well (Visual Studio 2003 / 2005)

Bit late replying on this thread - by why not use something like Virtual PC for you test enviroment? Or even Virtual Server seeing as Microsoft have made this a free download.....



Posted By: apuhjee
Date Posted: 09 May 2006 at 1:27pm
I wasn't even aware of this product. Thanks for pointing it out Robin!

Cheers ~ jp

-------------
I like mathematics because it is not human and has nothing particular
to do with this planet or with the whole accidental universe — because,
like Spinoza's God, it won't love us in return.



Print Page | Close Window

Forum Software by Web Wiz Forums® version 12.04 - http://www.webwizforums.com
Copyright ©2001-2021 Web Wiz Ltd. - https://www.webwiz.net