From: Tony Proctor on
Interesting, I thought there was a commercial product called ComGuard. Is
this the same thing Ken?

I do something similar to what your Add-In does but by scanning the VBP
files. It's a lot easier to implement, plus it means I can do it for the
whole build tree of a product suite. It also allows me to cross-reference
the information to make sure that different EXEs are built against the same
edition of a common DLL or OCX.

Tony Proctor

"Ken Halter" <Ken_Halter(a)Use_Sparingly_Hotmail.com> wrote in message
news:uJ4fgjXMGHA.2696(a)TK2MSFTNGP14.phx.gbl...
> <its_faiz(a)hotmail.com> wrote in message
> news:1139921314.311010.45870(a)g47g2000cwa.googlegroups.com...
> >
> > Please don't ask me to register/copy the files (on which application
> > is depending) one by one to get the problem resolve. I want to know the
> > exact file name/registry entry that is causing the problem.
>
> My ComGuard utility (add-in) can help with that. It'll build a class
module
> that checks to make sure everything your app depends on is present and
> registered. All you have to do is tell it to build the class and add a
> couple of lines to your app that instantiates the class and calls its
> VerifyInstallation method. It'll go through the list, firing an event
before
> and after each verification, telling you the status, etc. If something's
> missing, you can easily show a message box telling the user what's wrong.
> Even with that in place though, if the message box shows, it means the
class
> could not find the component in either of the 2 places it checks (the
> registry and a path to the component)
>
> Note that it's shareware but fully functional so you can build that class
> and uninstall it afterwards if you want.
>
> > Any help will be highly appreciated.
> >
> > Thanks,
> >
> > Faiz
>
>
> --
> Ken Halter - MS-MVP-VB - Please keep all discussions in the groups..
> DLL Hell problems? Try ComGuard - http://www.vbsight.com/ComGuard.htm
> Freeware 4 color Gradient Frame? http://www.vbsight.com/GradFrameCTL.htm
>
>


From: Ken Halter on
"Tony Proctor" <tony_proctor(a)aimtechnology_NoMoreSPAM_.com> wrote in message
news:uXFus%23XMGHA.3064(a)TK2MSFTNGP10.phx.gbl...
> Interesting, I thought there was a commercial product called ComGuard. Is
> this the same thing Ken?

Not sure... I did recently find several products using that same name
(doh!). Oh well... instead of DLL Hell, I guess I have add-in name hell <g>
I've been looking around for new name for a while now. By the time v1.00 is
released, I will have made my decision... keep it the way it is (all other
products using the name "ComGuard" are unrelated) or change the name....
hmmm...

> I do something similar to what your Add-In does but by scanning the VBP
> files. It's a lot easier to implement, plus it means I can do it for the

While ComGuard's building the class, it scans the VBP. One thing that some
may not like is that it adds a reference to tlbinf32.dll (and tells the user
its doing so) so it can easily check GUIDs, versions, etc. (I may look into
recoding that part)

> whole build tree of a product suite. It also allows me to cross-reference
> the information to make sure that different EXEs are built against the
> same
> edition of a common DLL or OCX.
>
> Tony Proctor

You're exporting a list? ComGuard'll export a tlb in the form of an XML file
but that's where it stops. No comparison to other files.

During compile, it optionally compares the current DLL to the compatibility
model and checks for missing publics, updates the model if needed. "it would
be nice" though to have this "cross project group" comparison. What I am
thinking of adding is a way to setup config (ini) files that would
unregister one set of components and register another set to give me that
"this exe was built on these components" functionality.

--
Ken Halter - MS-MVP-VB - Please keep all discussions in the groups..
DLL Hell problems? Try ComGuard - http://www.vbsight.com/ComGuard.htm
Freeware 4 color Gradient Frame? http://www.vbsight.com/GradFrameCTL.htm


From: Ken Halter on
"Ralph" <nt_consulting64(a)yahoo.com> wrote in message
news:B4CdnVWI6qUjamzeRVn-gA(a)arkansas.net...
>
> Why didn't you write that thing ten years ago?

Tell me about it <g> Can you imagine the amount of DLL Hell I had to put up
with before I finally said "enough is enough" and started putting this thing
together? <g> How many devs I had to work with that would simply shove a
bunch of publics in classes "where ever they fit", publish the component
without updating the docs, so the next time I built against it, all of those
undocumented publics would "break". arghhhh! <g> fwiw, I truly "eat my own
dogfood" with ComGuard.

> You could have saved me a ton of aggrivation. But, No! You had to wait
> until
> all my apps are in maintenance mode and three quarters of my hair is gone.

Actually, it seems that I like to wait until a product is no longer
supported before I start adding "goodies" to the pile <g> If interested, I
have a stack of round wooden "plugs" that have a hole in the middle... I'm
thinking of calling this new product a "Wheel" <g>

> Now I suppose you will wait another seven years before you write something
> that can figure out why that @#!% interopt @$#%$h!T won't work, when it
> worked just fine yesterday!
>
> <g>
> -ralph

Yeah... I have the "notify me when support ends" option set for all of my MS
dev tools so it's just a matter of time <g>

--
Ken Halter - MS-MVP-VB - Please keep all discussions in the groups..
DLL Hell problems? Try ComGuard - http://www.vbsight.com/ComGuard.htm
Freeware 4 color Gradient Frame? http://www.vbsight.com/GradFrameCTL.htm


From: Roy Lewallen on
An extremely useful -- and free -- application for troubleshooting this
kind of problem is Dependency Walker, from http://www.dependencywalker.com/.

Roy Lewallen

From: Ralph on
"Ken Halter" <Ken_Halter(a)Use_Sparingly_Hotmail.com> wrote in message
news:O9kHn1YMGHA.1028(a)TK2MSFTNGP11.phx.gbl...
> "Ralph" <nt_consulting64(a)yahoo.com> wrote in message
> news:B4CdnVWI6qUjamzeRVn-gA(a)arkansas.net...
> >
> > Why didn't you write that thing ten years ago?
>
> Tell me about it <g> Can you imagine the amount of DLL Hell I had to put
up
> with before I finally said "enough is enough" and started putting this
thing
> together? <g> How many devs I had to work with that would simply shove a
> bunch of publics in classes "where ever they fit", publish the component
> without updating the docs, so the next time I built against it, all of
those
> undocumented publics would "break". arghhhh! <g> fwiw, I truly "eat my own
> dogfood" with ComGuard.
>
> > You could have saved me a ton of aggrivation. But, No! You had to wait
> > until
> > all my apps are in maintenance mode and three quarters of my hair is
gone.
>
> Actually, it seems that I like to wait until a product is no longer
> supported before I start adding "goodies" to the pile <g> If interested, I
> have a stack of round wooden "plugs" that have a hole in the middle... I'm
> thinking of calling this new product a "Wheel" <g>
>
> > Now I suppose you will wait another seven years before you write
something
> > that can figure out why that @#!% interopt @$#%$h!T won't work, when it
> > worked just fine yesterday!
> >
> > <g>
> > -ralph
>
> Yeah... I have the "notify me when support ends" option set for all of my
MS
> dev tools so it's just a matter of time <g>
>
> --
> Ken Halter - MS-MVP-VB - Please keep all discussions in the groups..
> DLL Hell problems? Try ComGuard - http://www.vbsight.com/ComGuard.htm
> Freeware 4 color Gradient Frame? http://www.vbsight.com/GradFrameCTL.htm
>
>

LOL.

As for the latter - the interopt mechanism appears have subtle changes with
each release of the Framework. MS's advice? Install the new Framework.

Does that count as a "support ends"?

-ralph