This project is read-only.

BookMarkSave for VB6

Really, there's not much required for documentation of this project.

The end result of a compile is the BookmarkSave.dll file, which you can then register and, if all goes well, VB6 will subsequently recognize as an Addin.

External Files

The build process for this application is a bit peculiar and bears some explaining.

In order to properly register a VB6 Addin, certain keys need to be added to specific locations in the registry.

There are a variety of ways to do this, but this app takes a bit of a novel approach.

Generally speaking, Windows DLLs are registered via RegSrv32.exe. However, .net DLLs don't export the correct entry points for RegSrv32 to work with them.

In order to attempt to keep this project as "true" to VB6 Addins as possible, I've used the DLLExport utility described here http://www.vbfengshui.com/self-registering-com-net-assemblies/

You'll need that EXE on the path.

Also, this project makes use of my Line Number Embedding utility, GenerateLineMap.exe. Unfortunately, I haven't written up that particular utility yet. Strictly speaking, the project doesn't rely on it. It's only purpose is to extract the line numbers from the generated PDB and embed them into the EXE as a resource. Just remove or comment out the call to that particular EXE if you'd like to rebuild this application. My goal is to get an article written about GenerateLineMap done soon.

And finally, that post-build processing takes advantage of some special abilities inherent in VBPROJ files. Unfortunately, VB.net doesn't make those abilities available through the IDE, so, if you want to remove the calls to DLLExport or GenerateLineMap, or alter the post-build process, you'll need to open the BookmarkSave.vbproj file in a text editor and make those changes manually.

Last edited Jun 15, 2012 at 4:33 AM by DarinH, version 1

Comments

No comments yet.