Win7 installation for contest modules
Win7 forbids self-registration of dlls. The installer for any WriteLog add-in (including multiplier modules) must explicitly make the necessary registry entries for its COM objects. Your installer should make three entries, which are shown here by example:
[HKEY_CLASSES_ROOT\CLSID\{C7212339-7716-101A-AA54-00608C61D0B1}\Implemented Categories\{C7212159-7716-101A-AA54-00608C61D0B1}]
[HKEY_CLASSES_ROOT\CLSID\{C7212339-7716-101A-AA54-00608C61D0B1}\InprocServer32]
@=”d:\\Program Files (x86)\\WriteLog\\Programs\\10m32.dll”
[HKEY_CLASSES_ROOT\CLSID\{C7212339-7716-101A-AA54-00608C61D0B1}\WritelogMMD]
@=”ARRL 10m Contest”
The bold-face GUID is the guid you generated for your module. The “Implemented Categories” GUID is to appear literally in your registry entry. The InprocServer32 value points to your .dll’s full path. And the WritelogMMD value is the string that appears in WriteLog’s user interface to identify your module.
Programmer’s Note:
Note about WriteLog version 10.77–change in install.
Any multiplier module that installs an INI file in WriteLog’s \Programs directory is probably broken by the installer change in 10.77. That version separated the INI files (and other data files, like the DXCC CTY files) into a separate installation directory. The simple fix for end users is to move such INI files into WriteLog’s new common data directory (which is differently located for different versions of Windows, e.g. on Vista/Win7 it is ProgramData).
The correct behavior for multiplier module installers is to locate their binary files by reading writelog.ini for [Install]Directory and append “Programs\” for the dll files. For data files, read writelog.ini for [Multipliers]Location and locate the ini files there. This strategy for install will work for existing installs of recent versions of WriteLog both before and after 10.77. Unfortunately, any modules installed prior to 10.77 will break when the end user upgrades to 10.77 (because that version changes the value of the [Multipliers]Location INI entry but does not move your INI files automatically.) The end user will have to patch that problem.
Modules who’s source code was generated by the wizard from writelog.com should not need any code changes. The generated code looks for the INI files at the [Multipliers]Location writelog.ini entry. Its the installer for such modules that will have an issue.
RTTY TNC’s
Download and execute this file: wltnc.zip
As of version 10.27, WriteLog supports add-in drivers for RTTY TNCs written in C++. This download is for programmers that would like to add support for a TNC to RttyRite. It shows up as a new entry in the “TU Type” menu in RttyRite.
Rig Drivers and Front Panels
Download and execute this file: WlogRigSdk1025.zip
As of version 10.25, WriteLog supports add-in rig drivers and rig front panels. This zip file is documentation and sample code for how to write a rig driver and a front panel in either Visual Basic or C++. The samples are compatible with Microsoft VB version 5 or later, and C++ version 5 or later.
Read more about WriteLog Rig Drivers and Front Panels.
Pegasus
Download and execute this file: WLPegasus1017Src.ZIP
These are the sources to the modified version of the Pegasus software that has a OLE interface available to WriteLog. This software was originally from http://www.tentec.com/Pegdvlp.htm
WriteLog Contest Wizard
Download and execute this file: WlContestWizard16.zip (08/08/08)
If you’re a C++ programmer, here’s all you need to create your own contest modules for WriteLog. These are the same tools the author uses to create contests for WriteLog. Microsoft Visual C++ Version 6 or Version 5 with service pack 3 or is required. The wizard features check boxes to support logging multipliers for DXCC countries, zones, lists of named multipliers, and lists of named multipliers accumulated as you go.
Notes
- version 16 updates header files to new functionality up to WriteLog version 10.67
- version 15 adds support for Trusted QSL station locations, and for many more Cabrillo output options to be set up by the multiplier module.
- version 14 adds the ability for the multiplier module to tell WriteLog grid squares.
- version 13 adds the ability to update exchange fields on the fly, and adds some commentary about existing functionality in IWritelg.h
- version 11 adds instructions for how to create summary sheets. (there are no code changes in version 11)
- version 10 adds support for WriteLog’s “multiplier is worth mm:ss” display. (Only in version 10.38 and higher)
- version 9 adds support for CQ WW-style multi-2 displays.
- version 8 adds support for multi-line Cabrillo output from a single QSO.
- version 7 adds support for WriteLog’s multi/single 10 minute rule go/no-go display. And also fixes a bug with overwriting QSO information when the number of multipliers won’t fit in the QSO field it writes to. All existing multiplier modules should be inspected for calls to _itoa that were generated by the wizard version 6 and older. Any such calls should be replaced by calls to CvtLongToAscii (with slightly different arguments) per the instructions in readme.txt.
- version 6 adds support for customizing ADIF fields by contest modules.
- version 5 adds initialization to the countryIndex local variable in QsoAdd()/QsoRem()
- The wizard version 4 adds automation of serial number support.
Instructions: Choose an empty folder to do your development and preserve the directory structure when you unzip the above archive. Then look at ReadMe.txt.
Keyer Demo
Download and execute this file: KeyerDemo.zip (00/07/07)
The multi-function keyer enables paddle input, two-radio CW, PTT and antenna relay support and headphone audio switching all on a COMM port shared with radio control. You can control the keyer from your program as well. Here are some examples.