DLL & Form drin



  • Hi.

    Ich habe eine Frage.

    Ich habe eine DLL erstellt, mit dem DLL-Wizard.

    Dann wird ja so ein Gerüst erstellt für ne .dll

    Dann bin ich auf Neu->Formular
    gegangen und habe mir ein Formular designed.

    Der Name der Formular ist formLogin. Die klasse hat dadurch den Name TformLogin erhalten (Hat BCB so genannt).

    Das Problem ist, wenn die Funktion ShowFormFromDLL(void) auf rufe, zeigt er mir das Formular an, so wie es auch sein soll.
    Aber leider erscheint das Fenster auch in der Taskleiste.
    Somit hat mein Programm 2 Einträge in der Taskleiste.
    Aber ich will dieses Form nicht ind er Taskleiste drin haben...

    //---------------------------------------------------------------------------
    
    #include <vcl.h>
    #include <windows.h>
    #include "Unit2.h"
    #pragma hdrstop
    
    extern "C" __declspec(dllexport) void ShowFormFromDll(void);
    
    #pragma argsused
    BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fwdreason, LPVOID lpvReserved)
    {
    	return 1;
    }
    //---------------------------------------------------------------------------
    
    void ShowFormFromDll(void) {
      TformLogin* pForm = new TformLogin(Application);
    
      if(pForm->ShowModal() == mrOk) {
        ShowMessage("OK");
      }
      else {
        ShowMessage("Cancel");
      }
    
      delete pForm;
      pForm	= NULL;
    }
    


  • Vielleicht hilft dir dieser FAQ-Beitrag weiter!

    http://www.c-plusplus.net/forum/viewtopic.php?t=39244



  • Hat zwar geklappt, aber das Formular verhält sich komisch. 😞

    Wenn ich mit einem Button dann Formular aufrufe, zeigt er mir das Formular.
    Aber ein Teil vom Bildschirm (Was von dem DLL-Form drüber ist), wird da mit angezeigt.

    Ist keine Elegante lösung, mit dem Darstellungs Fehler.
    Kann auch gerne ein Screenshot von machen, um das zu verständlicher zu machen.


Anmelden zum Antworten