registrierung control debug/release



  • seltsames problem:
    ich entwickle ein control (ocx) mit vs2010. in den projekteinstellungen ist angehakt, daß die ausgabe registriert werden soll.
    projekt kompiliert prima, registrierung ebenfalls, sowohl bei debug als auch bei release.
    nach dem kompilieren/registrieren schau ich in die registry und sehe, daß unter

    HKEY_CLASSES_ROOT\CLSID\{9BA69CB2-637A-11D3-844E-004005E288E4}\InprocServer32
    

    je nach build tatsächlich der debug- oder release-pfad zum erzeugten ocx steht (und die datei existiert dort auch, gerade frisch)

    so weit so prima, jetzt zum gui (ebenfalls vc++)
    per ressourceneditor packe ich das gerade erzeugte ocx in ein formular - es wird ein entsprechender wrapper generiert:

    class CSPCRegelkarte : public CWnd
    {
    protected:
    	DECLARE_DYNCREATE(CSPCRegelkarte)
    public:
    	CLSID const& GetClsid()
    	{
    		static CLSID const clsid
    			= { 0x9ba69cb2, 0x637a, 0x11d3, { 0x84, 0x4e, 0x0, 0x40, 0x5, 0xe2, 0x88, 0xe4 } };
    		return clsid;
    	}
    

    das sieht soweit auch gut aus.

    das problem ist nun, daß egal, ob ich das control als release oder debug baue, die release-variante angezogen wird (zu erkennen am den ausschriften im output-fenster bzw. an den trace ausgaben des controls).

    hat jemand eine idee, woran das liegen könnte?

    ich arbeite unter vista, user mit adminrechten, starte visual studio als admin (damit regsvr32 klappt)

    ob ich mit vc6 oder vs2010 kompiliere, ändert am ergebnis nichts

    ich kann das gebaute release-control manuell ins debug-verzeichnis kopieren, dann wird das auch fehlerfrei benutzt

    dankbar für hilfe oder hinweise

    micha


  • Mod


Anmelden zum Antworten