CapeSoft.Com
Clarion Accessories
Multi-Proj
Documentation
Multi-Trouble
CapeSoft Logo

CapeSoft Multi-Trouble
Documentation

Download Latest Version FAQ History
Installed Version Latest Version

Multi-Proj Trouble-shooting Guide

When compiling the app

Problem A1

Link Error:Unresolved External BASIC in vsa_btn.obj

Explanation

When you compile an ABC data DLL for the first time you may find it including items that you didn't expect. This is because it is linking in all the ABC classes. It needs to do this because the data DLL doesn't know which of the ABC classes will be required by later apps.

Some 3rd party accessories ship as ABC compliant classes, and this means that they are also automatically included in your DLL. If they in turn make use of any compiled resource, such as a DLL or file Driver, then you may get a link error.

In the above example the Free ABC product, supplied by Vince Sorenson, is being included. And it makes use of the BASIC file driver. Usually Vince's template would add the BASIC driver to the list for you. But in this case the Class is being included without the template being used. Thus the BASIC driver hasn't been added to the project, or to the APP file.

Solution

The solution is in 2 parts.
  1. Add the Basic driver to your application. Open the App. Click on the Project button. Scroll down to Database Friver Libraries and Add BASIC.
  2. Add the Basic driver to the list of drivers used by your application. Global Extension. Multi-Proj. Resources tab. File Drivers button.
Tip

Other products may need other drivers. For example Makeover uses the DOS driver.

When compiling the prj

Problem P1

Link Error: Unresolved External DCTKILL@F in app.obj
Link Error: Unresolved External DCTINIT@F in app.obj

Solution

On the Multi-Proj extension for the app;
Untick the option : This app has no BC modules, and enter the correct Highest BC Number.


Problem P2

Link Error: Unresolved External appBCn$:xxxxxBCn:DCTKILL@F
Link Error: Unresolved External appBCn$:xxxxxBCn:DCTINIT@F
Link Error: Unresolved External appBCn$:xxxxxBCn:FILESINIT@F

Solution

On the Multi-Proj extension for the app;
Enter the correct number of BC modules in the Highest BC number setting.


Problem P3

Link Error : Unresolved External BASIC in whatever.obj

Solution

Add the BASIC driver to the Multi-Proj extension as it is required in your application (most likely by some 3rd party product). Add it on the Multi-Proj extension, Resources Tab, File Drivers button.


Problem P4

Link Error : Unresolved External DOS in whatever.obj

Solution

Add the DOS driver to the Multi-Proj extension as it is required in your application (most likely by some 3rd party product). Add it on the Multi-Proj extension, Resources Tab, File Drivers button.

When running the application


Problem R1

you get a "FM3 : Possible file change without changing version number" when you run an alternate driver version of your application.

Solution

in your data dll

global embed point, called "program setup"

priority 10

put

  compile('***',MsSQLDriver=1)
  ds_VersionModifier = 1000
  ***
 

if you had a third driver, say oracle, then you'd also add

  compile('***',OracleDriver=1)
  ds_VersionModifier = 2000
  ***
 

and so on.

Interacting with other 3rd party products

FM3

Problem R1

Vince Sorensons Free ABC

Problem P3