Super User Account posted on August 09, 2005 18:14

A lot of people ask me how to debug 3rd
party
modules because there is no well known procedure to do this. This
article will attempt to show you a method that I have used over the
last few years.
Before I show you those steps, I want to examine what we
need to get the module running/debugging. The first is source code (well that’s what we want to debug/enhance) and the
second is database tables/procedures.
Source Code is easy to add, you just add in a folder under DesktopModules
and load it up into your project (I use the MyModules
solution, if you are not using it; check it out because it makes things a whole
lot easier).
Database table and procedures can be a little bit trickier,
you could run each script in turn modifying the scripts to remove the
{objectQualifier} etc, but it can become a bit tedious and doesn’t cover
scenarios where IUpgradeable is used to modify the database.
To cover both aspects I actually install the “Private
Assembly” version of the first and then modify the module definitions to point
to the source code version. Using this method you are assured of an upgraded
database in seconds with the ability to debug and modify the source code. When
new versions are released, uninstall the module and repeat.
So the exact steps are:-
- Download
your chosen module (both Private Assembly & Source Code)
- Install
Private Assembly version via Host -> Module Definitions -> Upload
New Module
- Extract
the Source Code into a separate folder under desktop modules (e.g.
LinkSource for the links module source)
- Update
the module definitions of the module (Host -> Module Definitions) by
modifying each control and change the source to point to your newly
created source folder. Each control must point at its equivalent.
- Load
up your project and start debugging!
I hope you find this article useful, if you have any
suggestions for futures article please send me a private message on this site.