- Neues Visual C++ Projekt erstellen
- Win32 Projekt
- Weiter
- DLL + Leeres Projekt
- Fertigstellen
So als nächstes machen wir einen Rechtsklick auf Quelldatein und wählen:
Hinzufügen->Neues Element
Dann erstellen wir eine Cpp Datei und nennen diese z.b. main.cpp.
Jetzt fügen wir dort den folgenden Code ein:
PHP Code:
#include <windows.h>
extern int Main(); // Sagt dem Programm, dass die Funktion main nicht in der main cpp datei sondern woanders liegt.
void WINAPI MainThread( )
{
Main(); // Führt die Funktion Main aus, wenn die DLL geladen wurde.
}
BOOL WINAPI DllMain ( HMODULE hModule, DWORD dwReason, LPVOID lpvReserved )
{
switch ( dwReason ) {
case DLL_PROCESS_ATTACH:
DisableThreadLibraryCalls(hModule);
if ( CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)MainThread, NULL, 0, NULL) == NULL ) {
return FALSE;
}
break;
case DLL_PROCESS_DETACH:
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
}
return TRUE;
}
Hinzufügen->Neues Element.
Jetzt wählen wir Windows Form und nennen diese bsw. Form1.
In die erstellte Form1.cpp fügen wir den folgenden Code ein:
PHP Code:
#include "Form1.h"
#include <windows.h>
using namespace std;
using namespace ProjectName; // Unser Projektname
[STAThreadAttribute]
int Main() // Die Funktion Main die aufgerufen wird.
{
// Aktiviert die Styles etc...
Application::EnableVisualStyles();
Application::SetCompatibleTextRenderingDefault(false);
Application::Run(gcnew Form1()); // Erstelle neue Form1 und führe diese aus.
return 0;
}
Also ihr seht es klappt.
Credits:
Das meiste ist von mir, das mit den Application:: ... habe ich glaube ich von der Microsoft Seite, falls ich es doch von wo anders habe und es mir wieder einfällt sind Credits natürlich angebracht.







