eine dll mit IBM VisualAge 4.0 Exportieren und verwenden



  • Hallo,

    ich habe das Problem, das ich eine dll aus VA exportieren soll.

    Dies Funktioniert auch ganz gut, aber wenn ich diese dann in ein anderes Programm einbinde kennt der Compiler einen teil der in der dll definierten Klassen nicht.

    Ich habe die *.icc Projektdatei ltd. VA Handbuch so angepasst :

    //
    // This option group is used to set options that must have project-
    // wide scope:
    //
    option ProjectOptions = gen(rtti, "all")
    {
    //
    // These variables replace filepaths for certain sources,
    // and make future maintenance easier (the path will only have
    // to be changed in one location):
    //Building a shared (dynamic link) library 37
    
    DIRSEP = "\\"
    PLATFORM = "NT"
    BASE_DIR = "H:\\pvcswork\\AETools\\Fehlerklassen"
    TARGET = "fehlerklassen.dll"
    
    		option PlatformOptions = define("Protokoll"),
    		define("_X86_"),
    		link(subsystem, "windows", 4, 0),
    		link(libSearchPath, "H:\\pvcswork\\AETools\\Fehlerklassen\\EXEC")
    
    SRC_DIR = BASE_DIR DIRSEP "SOURCE"
    GEN_DIR = BASE_DIR DIRSEP "EXEC"
    OBJ_DIR = GEN_DIR
    SCHEMA_BIN = GEN_DIR
    SCHEMAGEN_DIR = GEN_DIR
    		option link(linkwithmultithreadlib), link(linkwithsharedlib),
    		lang(nokeyword, "bool"), lang(nokeyword, "true"),
    		lang(nokeyword, "false"), define("IC_LANG_BOOL", 0),
    		define("IVB_IMPORT", "_Import"), link(exportAll, yes),
    		incl(searchpath, "."),
    		incl(searchpath, GEN_DIR ),
    		PlatformOptions
    		{
    			target TARGET
    			{				//
    				// Source directives.
    				//
    				option macros('global', 'yes')
    				{
    					source "CProtokoll.cpp"
    					source "CProtokoll.h"
    					source "CFehler.cpp"								
    					source "CFehler.h"
    				}
    			}
    		}
    }
    

    In meinem Projekt habe ich die fehlerklassen.dll dann über die source Anweisung eingebunden.

    Ich hoffe hier kennt sich jemand auch mit einem nicht Freien C++ Compiler aus *g*

    Für eine Lösung wäre ich super dankbar...


Anmelden zum Antworten