Technical Support
Software
Redistributing ARK Components
This article provides guidelines on how ARK developers should distribute ARK components with their applications. These guidelines should be followed to ensure that their applications work properly on all of their customers' systems and do not conflict with other ARK-compatible applications.
COM system files
ARK requires that up-to-date versions of the following COM system files be installed on target systems:
- Oleaut32.dll *
- Olepro32.dll *
- Stdole2.tlb
- Asycfilt.dll
- Comcat.dll *
All of these files should be installed in the target machine's OS\System directory (e.g. C:\WINDOWS\SYSTEM). An asterisk indicates that the file also needs to be registered using Regsvr32.exe (PC), RegsvrCE.exe (PDA) or using a similar method. Care needs to be taken to ensure that older versions of files do not overwrite newer versions. Setup programs must first compare the version numbers between the existing and new files, then the date/time stamps if the version numbers are identical. Programs such as InstallShield correctly determine if a file is newer using both the Windows version APIs and file APIs. Microsoft also has C++ source code available that shows how this can be done.
These files are included along with the VB run-time DLL in the Microsoft Visual Basic 6.0 SP4 runtime package, available from the ARK web site More information on the runtime package is available from the Microsoft Knowledge Base.
Important Note: ARK components do not work properly with the version of COM that was included with the original version of Windows 95. This means that users with this version of Windows must have their COM DLLs updated in one of the following ways:
- By installing Internet Explorer 3 or newer.
- By installing the latest version of DCOM95 (not DCOM98) from the Microsoft web site, at http://support.microsoft.com/support/kb/articles/Q235/4/20.ASP.
Users can see if their system needs to be updated by right clicking on the My Computer icon, selecting Properties, and looking for the version number that starts with 4.00.950. If there is a B or a C after 4.00.950, the user does not need to install IE or DCOM95.
ARK components provided by Gennum
The ARK Core Component, ARK.dll, needs to be installed in the OS\System directory by all ARK-based applications and must be registered using Regsvr32.exe or by equivalent means. Applications that use ConfTree structures to load and save XML files must install and register ConfTree.dll and CTXML.dll into OS\System. This file is included in ARKbase 1.9.16 and later. As with the COM system files, version-checking these two files is essential. Please read the previous section in this article for information on how to do this.
Other ARK components and supporting files that are provided by Gennum in ARKbase should be installed into the OS\ARK directory (e.g. C:\WINDOWS\ARK). Because this directory is central, it may be used by multiple applications; however, because it is ARK-specific, installing and uninstalling shared files from this directory will not affect applications that are not ARK-based but still use some of the same shared files. The HiPro DLLs are a prime example of shared files that are used by applications that are not ARK-based, but also by the GenHiPro ARK controller component.
For reference, the files that are included in ARKbase that a developer may wish to redistribute are listed below. If an X appears in the Register? column, the file also needs to be registered using Regsvr32.exe or using a similar method.
| File |
Description |
Install Into |
Register? |
| ARK.dll |
ARK Core Component (required by all ARK-based applications) |
OS\System |
X |
| ConfTree.dll* |
ARK Configuration Component |
OS\System |
X |
| CTXML.dll* |
ARK Configuration Component |
OS\System |
X |
| GenHiPro.dll |
Standard HiPro Component |
OS\ARK |
X |
| ACSWITCH.DLL |
Required by GenHiPro.dll |
OS\ARK |
|
| ACSWIT32.DLL |
Required by GenHiPro.dll |
OS\ARK |
|
| HIP32225.DLL |
Required by GenHiPro.dll |
OS\ARK |
|
| SWBOXW32.DLL |
Required by GenHiPro.dll |
OS\ARK |
|
| SWBOXWIN.DLL |
Required by GenHiPro.dll |
OS\ARK |
|
| HIPROWIN.UK |
Required by GenHiPro.dll |
OS\ARK |
|
| COM_HOOK.EXE |
Required by GenHiPro.dll |
OS\ARK |
|
| GenUSB.dll** |
Standard DSP Programmer Component |
OS\ARK |
X |
| genusb.inf** |
Required by GenUSB.dll |
OS\inf |
|
| genusb.sys, ezusb.sys** |
Required by GenUSB.dll |
OS\System32\drivers |
|
| GA3203.dll, GA3204.dll, etc. |
Demo Product Component Libraries |
OS\ARK |
X |
| GenMicrocard.dll |
Standard Microcard Component |
OS\ARK |
X |
| MCard32.dll |
Required by GenMicrocard.dll |
OS\ARK |
|
| SmartCard2.inf |
Required by GenMicrocard.dll |
OS\inf |
|
| microconnect.inf |
Required by the Microconnect card |
OS\inf |
|
* Only required if being used to load and save XML files.
** Only required for manufacturing distributions.
The terms and conditions of redistributing ARK components provided by Gennum are described in the Gennum Product Support Software License. If you have any questions regarding redistributing components included in ARKbase, please contact Gennum at software@gennum.com.
Components provided by the fitting software developer
Components that are provided by the fitting software developer can be installed in the OS\ARK directory or the application directory. If the components were developed based on example source code provided by Gennum, be sure to change the class identifiers (CLSID's) and library names to ensure that they do not conflict with the components provided by Gennum. Also, remember to register ARK components using Regsvr32.exe or using a similar method on the target machine.
Third Party Software Components
Only the versions of third party software components that are shipped with ARKbase are tested for functionality. If different versions are used, they should be thoroughly verified so as not to cause conflicts with other manufacturers' distributions. Gennum cannot guarantee that using different versions of third party components will work properly with ARK components.
Redistribution for Windows CE
Redistribution of applications for Windows CE can be modeled after the ParamsCE setup package available in ARKbase for CE. This package was created by following the instructions in the Microsoft technical article "Successful Installation for Pocket PC Applications" on the Microsoft web site. This article is no longer available but a similar article is available at: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnce30/html/appinstall30.asp.
The following table illustrates which files in ARKbase for CE that developers may wish to redistribute. If an X appears in the Register? column, the file also needs to be registered using RegsvrCE.exe (or using a similar method).
| File |
Description |
Install Into |
Register? |
| ARK.dll |
ARK Core Component (required by all ARK-based applications) |
\Windows |
X |
| GA3203.dll, GA3204.dll, etc. |
Demo Product Component Libraries |
\Windows\ARK |
X |
| GenMicrocard.dll |
Standard Microcard Component |
\Windows\ARK |
X |
| MCard32.dll** |
Required by GenMicrocard.dll |
\Windows |
|
| atlce300.dll* |
Required by ARK DLLs |
\Windows |
X |
| mfcce300.dll |
Required by ParamsCE |
\Windows |
|
* Only required when distributing DLLs contained in ARKCE releases prior to version 3.4.0 and Product DLLs built using the ARKonline build tool prior to version 3.4.0.
** ARKCE Releases 3.2.0 - 3.4.1 require MCard32.dll to be installed to \WINDOWS\ARK
References:
Redistributing Microsoft Visual C++ 6.0 Applications
Microsoft COM Downloads and CD-ROMs
Q235420 - FILE: VBRun60sp4.exe Installs Visual Basic 6.0 SP4 Run-Time Files
If you have any questions or comments regarding this article, please e-mail software@gennum.com.
|