Helloworld Wizard OCX (ActiveQt 4.8.7) Projekt lässt sich nicht übersetzen



  • Hallo Community,

    ich bin es mal wieder:) Sorry für den schwammigen Titel.

    Ich habe eine ActiveQ OCX Project in VS2008 über den Wizard erstellt. Und wollte das dann einfach mal "übersetzen". (Ich selber habe wenig Erfahrung mit COM gedöns, aber ich komm grad einfach nicht weiter).

    Ok , habe das Projekt erstellt, und wollte es builden, hier die Ausgabe (irgendwie Problem mit der IDL Datei, wird diese denn erzeugt, oder muss diese schon da sein, habe das nicht verstanden:( Wäre super wenn ihr mal die Log anschauen könntet:)

    ```plain
    
    1>------ Rebuild All started: Project: OCXHelloWorld, Configuration: Debug Win32 ------
    1>Deleting intermediate and output files for project 'OCXHelloWorld', configuration 'Debug|Win32'
    1>Moc'ing ocxhelloworld.h...
    1>Uic'ing ocxhelloworld.ui...
    1>Compiling...
    1>moc_ocxhelloworld.cpp
    1>ocxhelloworld.cpp
    1>Generating Code...
    1>Compiling resources...
    1>Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
    1>Copyright (C) Microsoft Corporation.  All rights reserved.
    1>Linking...
    1>   Creating library C:\Users\admin\Documents\Visual Studio 2008\Projects\OCXHelloWorld\Win32\Debug\OCXHelloWorld.lib and object C:\Users\admin\Documents\Visual Studio 2008\Projects\OCXHelloWorld\Win32\Debug\OCXHelloWorld.exp
    1>QAxServerd.lib(qaxserver.obj) : warning LNK4204: 'C:\Users\admin\Documents\Visual Studio 2008\Projects\OCXHelloWorld\Win32\Debug\vc90.pdb' is missing debugging information for referencing module; linking object as if no debug info
    1>QAxServerd.lib(qaxserverbase.obj) : warning LNK4204: 'C:\Users\admin\Documents\Visual Studio 2008\Projects\OCXHelloWorld\Win32\Debug\vc90.pdb' is missing debugging information for referencing module; linking object as if no debug info
    1>QAxServerd.lib(qaxbindable.obj) : warning LNK4204: 'C:\Users\admin\Documents\Visual Studio 2008\Projects\OCXHelloWorld\Win32\Debug\vc90.pdb' is missing debugging information for referencing module; linking object as if no debug info
    1>QAxServerd.lib(qaxfactory.obj) : warning LNK4204: 'C:\Users\admin\Documents\Visual Studio 2008\Projects\OCXHelloWorld\Win32\Debug\vc90.pdb' is missing debugging information for referencing module; linking object as if no debug info
    1>QAxServerd.lib(qaxservermain.obj) : warning LNK4204: 'C:\Users\admin\Documents\Visual Studio 2008\Projects\OCXHelloWorld\Win32\Debug\vc90.pdb' is missing debugging information for referencing module; linking object as if no debug info
    1>QAxServerd.lib(qaxserverdll.obj) : warning LNK4204: 'C:\Users\admin\Documents\Visual Studio 2008\Projects\OCXHelloWorld\Win32\Debug\vc90.pdb' is missing debugging information for referencing module; linking object as if no debug info
    1>QAxServerd.lib(qaxmain.obj) : warning LNK4204: 'C:\Users\admin\Documents\Visual Studio 2008\Projects\OCXHelloWorld\Win32\Debug\vc90.pdb' is missing debugging information for referencing module; linking object as if no debug info
    1>QAxServerd.lib(qaxtypes.obj) : warning LNK4204: 'C:\Users\admin\Documents\Visual Studio 2008\Projects\OCXHelloWorld\Win32\Debug\vc90.pdb' is missing debugging information for referencing module; linking object as if no debug info
    1>Embedding manifest...
    1>Performing Post-Build Event...
    1>"c:\users\admin\documents\visual studio 2008\projects\ocxhelloworld\win32\debug\ocxhelloworld.idl"
    1>Couldn't open "c:\users\admin\documents\visual studio 2008\projects\ocxhelloworld\win32\debug\ocxhelloworld.idl" for writing!
    1>Microsoft (R) 32b/64b MIDL Compiler Version 7.00.0500 
    1>Copyright (c) Microsoft Corporation 1991-2006. All rights reserved.
    1>Processing C:\Users\admin\Documents\Visual Studio 2008\Projects\OCXHelloWorld\Win32\Debug\OCXHelloWorld.idl
    1>OCXHelloWorld.idl
    1>c1 : fatal error C1083: Cannot open source file: 'C:\Users\admin\Documents\Visual Studio 2008\Projects\OCXHelloWorld\Win32\Debug\OCXHelloWorld.idl': No such file or directory
    1>midl : command line error MIDL1003 : error returned by the C preprocessor (2)
    1>Couldn't open c:\users\admin\documents\visual studio 2008\projects\ocxhelloworld\win32\debug\ocxhelloworld.tlb for read
    1>Failed to register server!
    1>Project : error PRJ0019: A tool returned an error code from "Performing Post-Build Event..."
    1>Build log was saved at "file://C:\Users\admin\Documents\Visual Studio 2008\Projects\OCXHelloWorld\Win32\Debug\BuildLog.htm"
    1>OCXHelloWorld - 3 error(s), 8 warning(s)
    ========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ====
    ```=====
    ```=
    


  • So ein Mist. Das Problem liegt daran, dass der MIDL Compiler (IDC.EXE) keine Rechte hat eine idl Datei in dem Build Pfad zu schreiben 😫
    Obwohl ich VS2008 als Administrator gstartet habe, durften diese Build Process (IDC) trotzdem keine Dateien im build-Ordner anlegen..



  • Schau mal was im Build Log steht.



  • ja eben, aber ich ging davon aus, dass der IDC-Process Schreibrechte hat, weil ich VS ja als Admin ausgeführt habe



  • Das ist auch so. Wenn ich VS als Admin starte wird auch der Build Prozess im selben Account gestartet.

    Als welcher User bist Du angemeldet? Als Benutzer mit Namen Admin?

    Es ist nicht unbedingt so, dass Du als Admin auf andere User Profile zugreifen darfst.



  • Hallo @Martin-Richter ,

    ja ich bin Admin/Admin in einer VM drin..
    gestartet aus "C:\Users\admin\Documents\Visual Studio 2008\Projects"
    das is wohl dann das Problem gewesen? Aber der VC erzeugt ja auch Dateien im gleichen Ordner wieder IDC



  • Hast du mal probiert das ganze Debug Verzeichnis zu löschen und neu zu übersetzen?
    Bzw. kann es auch daran liegen dass irgend ein anderer Prozess ocxhelloworld.idl offen hat. Ist mir manchmal passiert wenn ein Build Tool so gecrasht ist, dass es als Zombie-Prozess weiterexistiert hat. Dann ist das File blockiert und kann nicht mehr zum Schreiben geöffnet werden und nicht gelöscht werden.
    In dem Fall hilft oft nur Rechner neu starten.

    Virenscanner und Backup-Tools können beim Kompilieren auch solche Probleme machen. Wobei die dann meistens nicht immer auftreten sondern manchmal gehts und dann wiedermal nicht.


Log in to reply