Code/C C++
[C++/CLI] #pragma managed, #pragma unmanaged, Windows API
Hide Code
2009. 5. 9. 06:49
#include <iostream>
#include <windows.h>
void foo();
#pragma managed
#pragma comment(lib, "user32.lib")
using namespace System;
int main(array<System::String ^> ^args)
{
// Call Managed Code
Console::WriteLine(L"Managed Code");
// Call Windows API Code
::MessageBox(NULL, _T("Win32 API in Managed Area"), _T("Hello"), MB_OK);
// Call Unmanaged Code
foo();
return EXIT_SUCCESS;
}
#pragma unmanaged
using namespace std;
void foo()
{
cout << "Unmanaged Code" << endl;
MessageBox(NULL, _T("Win32 API in Unmanaged Area"), _T("Hello"), MB_OK);
}
#include <windows.h>
void foo();
#pragma managed
#pragma comment(lib, "user32.lib")
using namespace System;
int main(array<System::String ^> ^args)
{
// Call Managed Code
Console::WriteLine(L"Managed Code");
// Call Windows API Code
::MessageBox(NULL, _T("Win32 API in Managed Area"), _T("Hello"), MB_OK);
// Call Unmanaged Code
foo();
return EXIT_SUCCESS;
}
#pragma unmanaged
using namespace std;
void foo()
{
cout << "Unmanaged Code" << endl;
MessageBox(NULL, _T("Win32 API in Unmanaged Area"), _T("Hello"), MB_OK);
}