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");