Da Freeware Wiki.
(Copyright © 2001-2007 Young Dynamic Software. All rights reserved – vb.mvps.org/tools/vbAdvance)
- vbAdvance is a Visual Basic Add-In that gives you access to advanced build features and many IDE convenience features.
- As a Visual Basic Add-In, vbAdvance runs while you design and compile your applications. Once your app is built, vbAdvance is no longer needed. vbAdvance adds no distributable dependencies to your projects - there is nothing to distribute because vbAdvance is only needed by the VB IDE.
- vbAdvance is a fast, efficient and groundbreaking piece of work, providing access to many features that are otherwise not possible in VB. Read on for the full list of features...
- Console Applications - Create true console-subsystem applications in Visual Basic that interact with the command-prompt from which they were launched. We are proud to be able to include a uniquely powerful Console Support Code Module and samples courtesy of Karl E. Peterson (author of the "Ask the VB Pro" column in Visual Basic Programmer's Journal and a VB MVP). This code module is the only one of it's kind and provides everything you'll need to create full-featured and robust console applications.
- Function Exports - Build standard DLLs that export functions using Visual Basic. Function exports are required for certain application types such as Control Panel Applets. Having access to this feature allows you to build these applications using VB. You can also implement the DllInstall feature of RegSvr32.exe in your DLLs to provide command-line switch customized registration of your DLLs. Many application plug-ins, such as WinAmp and InstallShield plug-ins, require function exports, which means you can now use Visual Basic to create them instead of having to resort to another language, or rely on non-VB proxy DLLs and the troubles that go with them.
- Complete Version Number Control - Visual Basic inexplicably omits one of the fields in your application's version number resource. The version number standard is as follows:
What VB normally gives you is this:
In other words, the Revision field is always set to 0. To confuse matters further, what VB calls the Revision field is actually the Build field. Be confused and frustrated no longer - vbAdvance gives you full access to your application's version fields.
- DllMain - The DllMain entrypoint is used in standard DLLs as a way to recieve startup and teardown notification. vbAdvance gives you the ability to use a DllMain entrypoint in your standard DLLs.
- DllRegisterServer / DllUnregisterServer customization - An extension of the Function Exports feature, the ability to override and customize these two registration exports gives you full control over your DLL's registration. For example, starting with Windows 2000, you have the option to register an ActiveX DLL to HKEY_CURRENT_USER instead of HKEY_LOCAL_MACHINE, thus avoiding the permissions problems some customers face. Unfortunately, VB gives you no way to specify this change. vbAdvance does. Using vbAdvance, you can easily change the Registry hive your DLL or OCX is registered under. You could also easily add any custom code you wanted to run at registration time.
- XP Manifest Resource Compiler - This option allows you to very easily add support for the new XP Themes. It automatically compiles the necessary XP Manifest Resource into your application. This feature eliminates the need to distribute a seperate XML file with your application and the trouble that goes along with it.
- Terminal Server Aware Applications - Create applications that are Terminal Server Aware, giving you full control over your app's behavior when run in a Terminal Server environment.
- App Icons - Set your application icon without the need for a Form or a Resource file. Just point to the icon file and build your project.
- Advanced Debug File Options - Strip private information from your PDB debug files to prevent reverse-engineering of your app when distributing debug files. Compile the Symbolic Debug Information into your EXE or DLL and avoid having to distribute a seperate PDB file. Generate MAP and DBG files for your project. With vbAdvance, the full list of possible debug file generation options is made available to you.
- Resource-Only DLLs - Build a resource-only DLL from your project's resource file with the touch of a button.
- Dynamic Conditional Compile Arguments - Specify conditional compile argument values that differ between design time and compile time. This is particularily useful for the DbgWProc.dll constant, DEBUGWINDOWPROC, which must be set to 1 when in design mode and 0 when compiled. Another example would be an IN_IDE conditional to determine if you're running in design mode, or compiled.
- Custom DOS Stub EXEs - VB automatically creates a DOS stub EXE for you when you build an executable. The purpose for this is to output some text to the command line when your EXE is run from the DOS environment, explaining that it is a Windows app and will not run under DOS. The Custom DOS Stub EXE feature allows you to place your own DOS stub EXE into your app, allowing you to customize the text that is displayed or even to run an actual DOS version of your application.
- Check Syntax - Check for syntax errors without building your binary.
- Build Button - Very similar to the Visual C++ Build button, this builds your project immediately. No dialogs are presented after the first build of the project sets the build path.
- Execute Button - Very similar to the Visual C++ Execute button, this launches your compiled app. A Send Command Line Args option allows you to send your project's command-line arguments to the executable.
- Send Code Module to Text Editor - VB's code editor is decent, but not great. If it weren't for Intellisense, there'd be nothing special about VB's integrated code editor. For high-powered editing, many programmer's turn to a professional text editor. vbAdvance makes it trivial to send the current code module to your text editor. Just press the button and your editor will open with the code module you were just viewing from VB. And when you've made your changes and return to VB, vbAdvance's Detect Code Module Changes feature will detect your edits and reload the module for you.
- Detect Code Module changes outside of IDE - This feature enables VB to detect when any code modules in your project are changed by another process. For example, if you Get Latest from SourceSafe, and one of your code modules is overwritten with a newer version, or if you edit one of the modules with a text editor, or even if you copy over a module using Windows Explorer, this feature will notify you that there was a change and offer to reload the module automatically, saving you from having to reload the entire project in order to pick up the changes.
- Disable Build Dialogs - The first time you build your project, you are presented with a 'Save As...' style dialog to tell VB where you want to build your project and what you want it named. This makes perfect sense. What doesn't make sense is that even though you already told VB what to name the executable, VB keeps asking you the same question every time you build your project - and to make matters worse, it kindly tells you that there's already a file of that name (duh!) and do you want to overwrite it? Well, vbAdvance to the rescue! The Disable Build Dialogs feature prevents those dialogs from appearing once you've told VB where to build the project. The first time you'll be asked where to build it, and subsequent times you will not be bothered. This is the normal behavior of the vbAdvance Build button, this feature allows you to apply it when building from the File menu option.
- Clear Immediate Window - This feature automatically clears the Immediate Window when you run your project.
- Sizeable Dialogs in the IDE - Ever wonder why all of the standard Windows common dialogs used by the VB IDE are not sizeable? So did we, and we took care of the problem. When vbAdvance is running, all standard Open and Save dialogs are sizeable.
- Binary Compatibility File Enhancement - An extension of the sizeable dialogs feature is found when you select your Binary Compatibility file for an ActiveX DLL project. It has become standard practice to use an extension of *.cmp for compatibility files in order to avoid confusion with the target DLL. Unfortunately, VB's Open dialog requires a few clicks to change the Selection Filter to 'All Files' in order to see any *.cmp files. vbAdvance adds the *.cmp filter entry to this Open dialog and makes it the default selection.
- Alert/Clear of Read-Only attribute when building or saving - Ever make a change to a source file, only to find you can't save it because it's marked read-only? Or try to build your project and can't, again because the target binary is read-only? vbAdvance adds intelligence to VB, alerting you of the problem and offering to clear the read-only flag for you, so you can get on with your work, instead of wasting time in Windows Explorer.