| « Source code is rarely needed for effective debugging |
When I start using a new application, it always interests me how significantly it is going to affect my system. Where does it store its executables and data? Does it write anything to the Registry? Does it register any COM/ActiveX components? How difficult would it be to uninstall it if I would have to do it manually? And of course, I would prefer if any application I use would try to keep my system as clean as possible.
I would have exactly the same questions if I would be thinking about taking into use an application like DebugLive. After all, it's a debugger. It allows you to debug applications - even on remote machines. For example, on your customer's server or workstation. It would be good to know how your debugging activities would affect the customer's systems after you are done with debugging.
OK. Let's take a look at the internals of DebugLive debugger and see where it is installed and what parts of the system are affected. Right up-front, I should say that we tried to keep the debugger's impact on your system as low as possible.
(If you are not interested in the technical details, but still want to know the basic facts about how DebugLive debugger could impact your system, feel free to skip to the Summary section at the end of this post).
Installation process
If you haven't used DebugLive debugger yet, it probably makes sense to watch our introductory video - "Introduction to DebugLive debugger". It shows how our application is installed and launched via the browser.
Now to the technical details. When you go to Start Debugger page and press "Start Debugger" button, a "starter" executable is downloaded to your system and saved in the browser's cache. This executable is called DebugLiveLocalStarter.exe or DebugLiveRemoteStarter.exe, depending on the page you used to start the debugger.
The "starter" executable contains all DebugLive debugger components, stored in a compressed form. When you launch the starter, it creates a DebugLive directory, uncompresses the components into that directory, and launches the main DebugLive executable (DebugLiveLocal.exe or DebugLiveRemote.exe). The main executable, in turn, opens the DebugLive debugger webpage, loads the necessary debugger components, and makes them available to the debugger webpage as a set of ActiveX controls.
It should be noted that, even though the application is using ActiveX controls, they do not have to be registered - they are developed using the "registration-free COM" technology. It allows us to keep the ActiveX components usable from within our application, and at the same time allows the application to run without any installation (and thus without making any modifications to the user's system). Also, registration-free approach prevents our ActiveX controls from being accessed (and possibly exploited) from other webpages viewed in the user's browser.
Also, DebugLive debugger does not install/register any other automatically launchable components (like system services).
Where is the exact location of the directory where DebugLive debugger stores its executable files? This directory is created under the so-called "user settings" directory. On Windows XP and Windows Server 2003 operating systems, this directory is usually located here:
C:\Documents and Settings\YourUserName\Local Settings\Application Data\DebugLive1
On Windows Vista, Windows 7 and Windows Server 2008 this directory is usually located here:
C:\Users\YourUserName\AppData\Local\DebugLive1
(The actual name of the DebugLive directory can differ in customized DebugLive Onsite installations, but it will still be in the same location and will still be clearly recognizable)
Executable components are stored under Bin subdirectory of the DebugLive directory.
Configuration files
The only piece of configuration that needs to be stored by DebugLive debugger are user workspaces - configuration settings like positions of the debugger windows, symbol path, and so on (you can find more information about the debugger workspaces here).
This information is stored in a set of configuration files, which can be found under Workspace subdirectory of the DebugLive directory described above.
Debugger extensions
Debugger extensions allow to extend the functionality of DebugLive debugger. There is a number of useful debugger extensions provided by DebugLive, and third party developers can create their own extensions with the help of our Extension API. (More information about debugger extensions can be found here).
A typical debugger extension is packaged as a COM component, consisting of a configuration file, a DLL (that hosts a registration-free COM component), and possibly other, extension-specific files.
The process of installing a debugger extension consists of downloading the extension from the DebugLive server, storing it in the extensions directory, and making it available to the debugger as a registration-free COM component.
Again, extension installation does not require any modifications to the system configuration (like making changes to the Registry or configuration files).
Downloaded extensions and their associated data are stored in Extensions directory, under the main DebugLive directory described above.
Uninstallation
Since DebugLive debugger does not make any modifications to the Registry or system configuration files, it is very easy to uninstall it.
To completely remove DebugLive debugger from the system, it is enough to delete the DebugLive directory:
On Windows XP and Windows Server 2003:
C:\Documents and Settings\YourUserName\Local Settings\Application Data\DebugLive1
On Windows Vista, Windows 7, Windows Server 2008:
C:\Users\YourUserName\AppData\Local\DebugLive1
Summary
Here is a short summary of all the information presented above:
1) DebugLive debugger does not modify the configuration of your system (it does not modify the Registry nor does it modify any system configuration files)
2) DebugLive debugger does not install/register any COM/ActiveX components or any other automatically started entities (like system services)
3) DebugLive debugger stores all its executable files and data in the same location: under "user settings" directory.
On Windows XP and Windows Server 2003:
C:\Documents and Settings\YourUserName\Local Settings\Application Data\DebugLive1
On Windows Vista, Windows 7, Windows Server 2008:
C:\Users\YourUserName\AppData\Local\DebugLive1
4) To completely remove DebugLive debugger from your (or your customer's) system, it is enough to delete the DebugLive directory.
This post has 16 feedbacks awaiting moderation...