Calling C Libraries from .NET

Calling C Libraries from .NET

Suppose your library is in C and and your code is in .NET or VC++ (for a UI-based application). Further, suppose you want to display a message box whenever the library raises any error. In that situation, the following code is useful:

#include <stdio.h>HWND g_AdtDlgWnd = NULL;void UserWarning(char* arg1,char* arg2, ...){	va_list list;	char Buffer[1024];	int ret;	va_start(list,arg2);	ret=vsprintf(Buffer,arg2,list);	va_end(list);	{		HWND hwnd_cur=GetFocus();		if(hwnd_cur == NULL)		{		hwnd_cur = GetADTDialogWindow();//Find handle of dlg		}		MessageBox(hwnd_cur,Buffer,arg1,MB_OK);	}}HWND GetADTDialogWindow(void){	if(g_AdtDlgWnd == NULL)	return FindWindow(NULL,ADT_TITLE);//Provide title // of window (Dialog)	else		return g_AdtDlgWnd;}

Now, call the function:

UserWarning("Data Transfer","Data not saved on server side");


Share the Post: