Downloads
Submitted by sgsax on Wed, 05/31/2006 - 16:19.
Visual Basic
Documents
DIY
- Here are some of the things I and others have done that you may find useful.
- Access/VBA
- Visual Basic
- Documents
- DIY Cards
- VBE IDE Error Handler Inserter Add-In
- It's finally here!!! John Colby's excellent A97 error handler is now ported to A2K and AXP. The zip file dontains a single dll file which needs to be placed in your \Windows\System folder (or \winnt\system32 for NT/2K, or \Windows\system32 for you brave XP folks), and then manually registered using regsvr32. To do this, simply open a DOS window (or command prompt) and type 'regsvr32 "VBEErrorHandler.dll"'. Leave off the single quotes, but keep the double quotes since it's a long filename. All Office apps should be closed before you do this. Now open a database of your choosing and then any of its modules. You should notice a new toolbar with the error handler insertion functions, and a new menu group under the Add-Ins menu named "C2DbFrameWiz". In this group you will find an additional selection for "Configure Error Handler." This is where you make change your preferences for how the add-in works. Try it out. Tell me how it works on your system. Let me know if there are problems. Enjoy!
- Zip file. 132906 bytes.
- VBEErrorHandler VB Project Source
- And if you'd like to see how we did it, or for an example of how tyo build your own VBE Add-In, you can download the VB project and have a look. Note this is not 100% commented and may be a bit confusing at first, but if you stare at it long enough, it starts to make sense. Here's a hint: start by looking at the code for the Designer object (dsrErrHndlrBldr). This is where the user interface (menus and toolbars) are created and their events handled. You can work your way backward from there to see how the whole thing executes. Please feel free to e-mail me if you have any questions or comments regarding this project.
- Zip file. 112076 bytes.
- Original Access97 Add-In
- Here's the former version of the error handler add-in that works with pre-VBEIDE Access 97. The zip file contains the .mda add-in, documentation on usage, and a handy installer tool that configures Access to use the add-in. This is based on the GGCCErrorHandler, started by Glenn Grubb and shortly joined by John Colby who refined it to it's current form, the C2DBFrameWiz: Colby Consulting Database Framework Wizard. This is where I started developing my VBE IDE add-in from. If you're still (gasp) having to use Access 97, you definitely want this tool.
- Zip file. 449010 bytes.
- Auto Linker 2.1
- Check and, if necessary, update and refresh table links to multiple backend database files of varying types. Developed by Carl Tribble. This copy includes my port to A2K.
- Zip file. 483350 bytes.
- Autofill Lookup
- Demonstrates use of a partial entry search method. User can type any number of letters from the start of the searchable field, and the listbox is filtered appropriately. This version co-developed by Seth Galitzer and Paulo Ramos.
- Self-extracting zip file. 62937 Bytes.
- basMultiLookup
- Designed to be more flexible than DLookup. Search method based on Trevor Best's improved DLookup function, tLookup.
- Plain text file. 4571 Bytes
- Combobox Filtering Demo
- Sample of how to filter values listed in a combobox based on the selection of a previous combobox. It's usage should be fairly self-explanatory.
- Zip file. 18697 bytes.
- Control Referencing Test
- Tests efficiency of various method for referencing controls on a form. Contains code written by myself and Shamil Salakhetdinov.
- Self-extracting zip file. 78334 bytes.
- EMail Sender Demo (Access version)
- This demo sends email using raw winsock access. It is completely self-contained and requires no external controls or libraries. Most of this code was borrowed from other sources and re-packaged by me. All code is provided with original copyright information. VB version.
- Zip file. 132514 bytes
- Easter Egg Demo
- Demonstrates one method for including an "easter egg" in your application. Using VB6, I created an ActiveX dll which contains the easter egg code (in this case, just a simple message box). If you give the dll and function a cryptic (eg important) sounding name, if anybody happens to see your code, they won't suspect too much. It's up to you to implement a method to activate the code. This demo just uses a command button to demonstrate how the principle works. Since the dll is ActiveX, it needs to be registered before the demo will work. I have included a bat file to do this for you. Unzip the files to your hard drive, and run install.bat. It should get you going. If you still have problems, check the references for the form's module and make sure the reference to "prjEET" is checked and not marked MISSING. The zip file contains the demo mdb, the dll contianing the easter egg, and the installation batch file. You will need the VB6 runtime dll. I have a copy here if you don't have it.
- Zip file. 12256 bytes.
- Environment Variable Demo
- Environment variables are set and used by the operating system. There are many variables that are common among all systems, such as the search path, prompt configuration, and temp directory. Various software may add its own environment variables to be used during runtime. Users may add their own variables as well. This app demonstrates iterating through the environment variables that have been set by using the Environ() function.
- Zip file. 37836 bytes.
- Fancy Button Demo
- Demonstration of a graphical CommandButton replacement. Please read the accompanying readme.txt file for extensive notes and credits.
- Zip file. 142542 bytes.
- File I/O in VB
- Code snippets demonstrating reading from and writing to plain text files.
- Plain text file. 2840 Bytes
- File Search
- Demonstrates searching for files on your hard drive(s) with a specified extension. The search code recursively looks in all subdirectories for files with the specified extension. A bit slow, since it uses the Dir() function. I'm not sure how to make it faster at this point. Demonstrates use of Win32 API functions GetLogicalDriveStrings and GetDriveType. Also shows an example of using a globally declared database variable and referring to it rather than using calls to CurrentDb repeatedly.
- Zip file. 52625 bytes.
- Generic Functions
- A handful of other functions that I have found useful.
- Plain text file. 6443 Bytes
- Get Web Document Demo
- Demonstrates how to use the MS Internet Transfer Control to get an html document from the Web and display it (the source html code) in a textbox. Also demonstrates how to use the MS Web Browser Control. Nothing too tricky here, just shows you a couple of ways to get web pages. You'll need the Internet Transfer Control (msinet.ocx), and the Microsoft Internet Controls (shdocvw.dll, installed with IE 3+ or Win98) installed and registered.
- Zip file. 17235 bytes.
- IP Address Scanner
- I'm a network administrator, among other things. One of the biggest hassels an admin has these days is keeping track of IP numbers. Even though we use DHCP to dynamically assign most of our IP addresses, there are still several static IP address that are use for various reasons. Because of this, it's nice to keep an inventory of what numbers are being used. Such an inventory can be tedious to do manually. All the information that can be gathered from an IP address is well documented, so I figured there must be a way to get this info automatically. This app is the result of that desire. This app scans a specified IP range and stores the IP address, the name of the computer (Windows NetBIOS or DNS), the MAC address of the network card, and a timestamp for all addresses in that range. Winsock and IP related API calls are used extensively. The functions which poll the local ARP cache are from the iphlpapi library, which is only available in Win98 and WinNT 4.0 SP4+. This means that MAC address retrieval will not work on any other Windows platform. All other aspects will be fully functional. One other caveat with the ARP caching stuff, it will only retrieve data from other computers on your local network segment. This means you can only get MAC addresses from computers behind the same router you are on. Since I was only interested in the IP addresses within my department, this limitation was of no consequence to me. I had to do a lot of digging to put this code together, but I was very pleased with the final result. Even scanning a full subnet range only takes a few minutes. The forms are very basic and do not provide much error handling. The code that does the work is quite robust, however. Included in this app is my IP Tool class (see below for the extracted class module) which I put together for this purpose. Credit for code is given where appropriate (and when I was able to find it) and noted in the code comments. Use the form "frmScan" to set your scan range. Note you can only scan one subnet at a time. To scan a full subnet range (1-255), simply enter 0 in the last box for the start range. To review your results, use the other form included , "frmIPList". With this form, you can sort by clicking on the column header labels or disable any sorting, and filter results by subnets you have scanned or disable any filtering. I hope you find this tool as useful as I have. It was certainly an excellent way to get acquainted with some of the more obscure IP API functionality with Windows. If you have any questions, comments, or suggestions, I'd love to hear them.
- Zip file. 206430 Bytes
- IP Tool class
- A class module I put together for an IP address scanner (see above). This class provides methods for name-to-address (DNS) and address-to-name (reverse DNS) resolution and ping functionality. To use it in Access, you'll need to create a new Class Module and name it "clsIP_Tools" and paste the contents of this text file into it.
- Plain text file. 11457 Bytes
- Registry Manipulation
- Do you find that the built-in functions for accessing the registry (GetSetting, SaveSetting, etc.) just aren't flexible enough for your tastes? There are API functions for accessing the registry, but they can get confusing, and you need to use them in proper seqence or you can damage your registry. This module contains all the code you need to read and write anywhere in the registry using two wrapper functions. The functions mimic GetSetting and SaveSetting but have additional parameters where you can sepecify the key/value location. To use in Access, just copy and paste into any module. To use in VB, change the file extension to .bas and include it in your project.
- Plain text file. 8573 bytes.
- ResetAllAutoNumbers
- My own workaround for the issue described in MSKB article Q287756: "When you delete the last record or records in a table or in a form that has an AutoNumber field, and you then compact the database, the AutoNumber field does not start at the next higher number when you add new records." This happens if you have installed Jet 4.0 SP4 or later. Copy the contents of this file and drop it into a new module in an mdb. There are three functions in the file, all must be included in order for the main function to work properly. After you have run Compact and Repair on an mdb, open another mdb containing this module, and run ResetAllAutoNumbers from the Immediate window. The GUI Wrapper version does all this for you in a nice, user-friendly package. It includes a button which opens the Windows Common File Dialog to select your mdb file, and does the Compact and Repair first for you. The code is heavily commented, and can be modified as indicated to your liking.
- Module only: Plain text file. 8156 Bytes
GUI Wr
- Simple digital clock form
- MDB contains only one form. It simulates a digital clock using overlapping bitmaps of digits. Updates every 10 seconds to reduce CPU/memory usage.
- Self-extracting zip file. 47022 Bytes
- System Tray Demo
- Demonstrates how you might minimize your application to the system tray. This demo was assembled by adapting the code from several sources. Credits and references are in the code comments. I had fun figuring this one out. I hope you enjoy it.
- Zip file. 44431 Bytes
- Toggle References
- Adds or removes a reference to any library, depending on current state of the reference.
- Plain text file. 5184 Bytes
- ChopIt!
- Takes a large text file and chops it up into small pieces. Demonstrates file I/O, and use of Common File Dialog and Browse Folder Dialog API calls. Zip file contains executable and full source. Requires MSVBVM60.DLL, available separately if you don't already have it.
- Zip file. 18859 bytes.
- EMail Sender Demo (VB version)
- This demo sends email using raw winsock access. It is completely self-contained and requires no external controls or libraries. Most of this code was borrowed from other sources and re-packaged by me. All code is provided with original copyright information. Access version.
- Zip file. 73452 bytes
- msinet.ocx
- Microsoft Internet Transfer Control 6.0. Wraps up all the TCP/IP calls for connecting to and retrieving files from an FTP or HTTP server. There's a lot to this one. For general usage information, see this page on the MSDN site. If this page has moved, just search for "Internet Transfer Control" on MSDN. Unzip the ocx into the windowssystem directory and register it by typing "regsvr32 msinet.ocx" in a DOS window.
- Zip file. 57836 bytes.
- MSVBVM60.DLL
- Microsoft Visual Basic 6 runtime library. Starting with VB5, MS bundled all of the required VB runtime libraries into one big file. This is more convenient, but the result is this 1.3 MB behemoth of a file. One of these days, MS will do away with this kind of annoyance. For now, all the samples I have here will not run without it. For your convenience, I have posted it here as a separate download from my samples.
- Zip file. 735443 bytes.
- vbSpy
- I was looking for a way to easily identify windows by their name, class, or handle. MS Visual C++ includes a little app call spy.exe which does this. I found code on the MS KB site which replicates this in VB. I have taken that code and repackaged it here. Run the application and it will give you detailed information about any window that you hover your mouse over.
- Zip file. 6691 bytes.
- Local Weather
- Small application which checks your local weather. You enter your city and state or zipcode and it polls the Weather Channel's website to get your own local weather. It minimizes to the SysTray and uses an icon there that corresponds to the current conditions. The zip file includes the application, a text file required by the application, and three ActiveX files (msinet.ocx, mscomctl.ocx, ccrpTmr6.dll). The minimum download version includes ony the application, text file and ccrpTmr6.dll. (ccrpTmr6.dll is a replacement for the timer included in the MS Common Controls and can be found on the Common Controls Replacement Project's website.) The ActiveX files need to be placed in the WindowsSystem directory, but the application and text file can be placed anywhere. The msvbvm60.dll is also required. No fancy installer yet. There are a couple more things that need to be done yet, this can be considered and Alpha version right now. Alternative minimum download.
- Zip file. 618227 bytes.
Minimum dowload: Zip fi
- Access HotKeys
- This is a Word97 document which contains a complete listing of hotkeys recognized by Access97. It is was Developed by Candia Computer Consulting, Candia NH USA Al Campagna, alcamp@xtdl.com, and contributed by Charles A. Wolfe.
- Zip file. 12564 bytes.
- Access97 Command Summary
- This zip file contains a Word97 document which includes the name of each command in Microsoft® Access 97, its corresponding button, if any, and a description of the command. The document is quite extraordinary and very informative. Contributed by Charles A. Wolfe.
- Zip file. 551282 bytes.
- Application Profile Form
- This zip file contains a Word97 document drafted by Richard Gillingham. Here's what he has to say about it: "I got tired of asking the same basic questions for each new project. I put together a 4-page Word-based document that I actually give to the potential client, and require that they complete the questions (over 50 questions) before I can provide an estimate, or start a design effort."
- Zip file. 6922 bytes.
- ASCII Character Map
- A handy chart of the ASCII character values from 0 to 255. Included are decimal and hexidecimal values, and the printed character. Values listed are from the MS Windows Latin-1 character set. For the official ISO/IEC 8859-15: Latin-9 character specification, read this pdf file. This chart will help you with any character generation under DOS or Windows 9x/NT/2K. Provided here in , WordPerfect 9, Adobe Acrobat (pdf), and plain text formats.
- Zipped doc file: 6064 bytes
Zipped wpd file: 55
- Word 2000 Shortcut Key Listing
- OK, so this isn't really a download, but I figured I would include it here. It is a full listing of all shortcut keys (I call them hotkeys) for MS Word 2000. You can generate this list yourself by following the easy instructions found here, or you can just keep a copy of this page or URL and save yourself the trouble.
- HTML file. 45620 bytes.
- Valentines Day
- This PDF file includes fillable fields so you can "personalize" your card if you wish.
- PDF file. 33444 bytes.
