[solved] ATL ActiveX: error PRJ0019: A tool returned an error code...



  • hallo,

    verwende zwar kein MFC, sondern ATL, weiß net recht, wo ich mit meim topic hin gehör'... i versuchs mal hier.

    also ich hab ein ActiveX control, das zwar buildet und linkt, jedoch schlägt die registrierung anscheinend fehl (i muss dazusagen i bin ein ActiveX n00b, hab also kan plan, is nur a vermutung). also nachm linken bekomm ich die sehr hilfreiche fehlermeldung

    1>Project : error PRJ0019: A tool returned an error code from "Performing Custom Build Step"

    das hilft mir net wirklich weiter.

    wie gesagt bin i ActiveX- (und auch COM-)Neuling und daher ein wenig ratlos -- wo/wie fang' ich in so 'nem fall zu suchen an?

    das build-log sieht so aus:

    Build Log Build started: Project: OpenGL, Configuration: Debug|Win32
    Command Lines Creating temporary file "c:\Dokumente und Einstellungen\userX\Eigene Dateien\ActiveX\AXOpenGL\Debug\RSP0000273508120.rsp" with contents
    [
    /OUT:".\Debug/OpenGL.dll" /INCREMENTAL /LIBPATH:"C:\SDK\ACE_wrappers_5_4\lib\Win32\" /DLL /MANIFEST /MANIFESTFILE:".\Debug\OpenGL.dll.intermediate.manifest" /DEBUG /PDB:".\Debug/OpenGL.pdb" /SUBSYSTEM:WINDOWS /IMPLIB:".\Debug/OpenGL.lib" /MACHINE:X86 /SAFESEH aced.lib

    ".\Debug\OpenGL.obj"

    ".\Debug\OpenGL.res"

    ".\Debug\OpenGLObj.obj"

    ".\Debug\StdAfx.obj"

    ".\Debug\ACEClient.obj"

    ".\Debug\AceRoot.obj"

    ".\Debug\OGLInput.obj"

    ".\Debug\OGLRenderDevice.obj"

    ".\Debug\Properties.obj"

    ".\Debug\DummyNetClient.obj"

    ".\Debug\OpenGL.dll.embed.manifest.res"
    ]
    Creating command line "link.exe @"c:\Dokumente und Einstellungen\userX\Eigene Dateien\ActiveX\AXOpenGL\Debug\RSP0000273508120.rsp" /NOLOGO /ERRORREPORT:PROMPT"
    Creating temporary file "c:\Dokumente und Einstellungen\userX\Eigene Dateien\ActiveX\AXOpenGL\Debug\RSP0000283508120.rsp" with contents
    [
    /out:".\Debug\OpenGL.dll.embed.manifest" /notify_update /manifest

    ".\Debug\OpenGL.dll.intermediate.manifest"
    ]
    Creating command line "mt.exe @"c:\Dokumente und Einstellungen\userX\Eigene Dateien\ActiveX\AXOpenGL\Debug\RSP0000283508120.rsp" /nologo"
    Creating temporary file "c:\Dokumente und Einstellungen\userX\Eigene Dateien\ActiveX\AXOpenGL\Debug\BAT0000293508120.bat" with contents
    [
    @echo Manifest resource last updated at %TIME% on %DATE% > ".\Debug\mt.dep"
    ]
    Creating command line """c:\Dokumente und Einstellungen\userX\Eigene Dateien\ActiveX\AXOpenGL\Debug\BAT0000293508120.bat"""
    Creating temporary file "c:\Dokumente und Einstellungen\userX\Eigene Dateien\ActiveX\AXOpenGL\Debug\BAT00002A3508120.bat" with contents
    [
    @echo off

    regsvr32 /s /c "c:\Dokumente und Einstellungen\userX\Eigene Dateien\ActiveX\AXOpenGL\Debug\OpenGL.dll"

    echo regsvr32 exec. time > ".\Debug\regsvr32.trg"

    if errorlevel 1 goto VCReportError

    goto VCEnd

    :VCReportError

    echo Project : error PRJ0019: A tool returned an error code from "Performing Custom Build Step"

    exit 1

    :VCEnd
    ]
    Creating command line """c:\Dokumente und Einstellungen\userX\Eigene Dateien\ActiveX\AXOpenGL\Debug\BAT00002A3508120.bat"""
    Output Window Linking...
    Creating library .\Debug/OpenGL.lib and object .\Debug/OpenGL.exp
    Microsoft (R) 32b/64b MIDL Compiler Version 6.00.0366
    Copyright (c) Microsoft Corporation 1991-2002. All rights reserved.
    Processing .\vc80.idl
    vc80.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\prsht.idl
    prsht.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\wtypes.idl
    wtypes.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\basetsd.h
    basetsd.h
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\guiddef.h
    guiddef.h
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\mshtml.idl
    mshtml.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\ocidl.idl
    ocidl.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\oleidl.idl
    oleidl.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\objidl.idl
    objidl.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\unknwn.idl
    unknwn.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\oaidl.idl
    oaidl.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\servprov.idl
    servprov.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\urlmon.idl
    urlmon.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\msxml.idl
    msxml.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\dimm.idl
    dimm.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\mshtmhst.idl
    mshtmhst.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\docobj.idl
    docobj.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\exdisp.idl
    exdisp.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\objsafe.idl
    objsafe.idl
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\oaidl.acf
    oaidl.acf
    Processing C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include\ocidl.acf
    ocidl.acf
    Embedding manifest...
    Performing Custom Build Step
    Project : error PRJ0019: A tool returned an error code from "Performing Custom Build Step"
    Results Build log was saved at "file://c:\Dokumente und Einstellungen\userX\Eigene Dateien\ActiveX\AXOpenGL\Debug\BuildLog.htm"
    OpenGL - 1 error(s), 0 warning(s)



  • Registrier das Control doch mal von "Hand" auf der Kommandozeile:

    regsvr32 OpenGL.dll
    


  • hmh...

    LoadLibrary("OpenGL.dll") fehlgeschlagen - Das angegebene Modul wurde nicht gefunden.

    was heißt das jetzt? Oo

    btw, falls das relevant ist: ich bau mein control auf ein sample von microsoft.com auf, hab dieses erst ausgemistet -> ging noch. hab dann meine klassen eingepflegt, 'ne zusätzliche lib hinzugefügt -> ging nicht mehr.

    wie funktioniert der ganze registrierungsmechanismus überhaupt? da gibts ja diese .rgs-files, die vom wizzard erzeugt werden, bei mir in der solution fehlt das allerdings (???) der wizzard erstellt ausserdem diese proxy-projekte und -objekte, die sind im sample ebenfalls nicht enthalten.

    kennst du vll. 'ne quelle, bei der ich mich schnell und effektiv über das ganze notwendige zeugs informieren kann? also crashkurs-artig? weil i hab keine zeit mir das alles in depth-first-art reizuziehen... wenn da jemand a empfehlung hätte wie ma schnell zum notwendigen wissen kommt, wär's echt net!



  • Vermutlich fehlt eine DLL, die von Deiner DLL benötigt wird. Öffne man Deine DLL mit
    www.dependencywalker.com



  • HAH!! das wars. viiielen dank! das war a fehler, den i erst zum ausführungszeitpunkt erwartet hätte, net beim registrieren.



  • "Registrieren" *heisst* "ausführen"...



  • aaaa-ha? 😕 dachte, da würde nur das control in da registry registriert...



  • Das Control registriert sich ja *selber* und dazu muss es ausgeführt werden 😉
    Sie Export-Funktioen (Dll(Un)RegisterServer).



  • aso! okay, thx.


Anmelden zum Antworten