public struct HelpInfo
{
}
public delegate void MsgboxCallback(HelpInfo helpInfo);
[StructLayout(LayoutKind.Sequential,CharSet=CharSet.Auto)]
public struct MsgboxParams
{
public int cbSize;
public IntPtr hwndOwner;
public IntPtr hInstance;
public string text;
public string caption;
public int style;
public string icon;
public int helpId;
public IntPtr callback;
public int languageId;
}
class Program
{
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public static extern int MessageBoxIndirect(ref MsgboxParams param);
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public static extern IntPtr LoadIcon(IntPtr hInstance, string iconName);
static void Main(string[] args)
{
MsgboxParams mp=new MsgboxParams();
mp.hwndOwner = IntPtr.Zero;
mp.hInstance = IntPtr.Zero;
mp.text = "ok";
mp.caption = "ti xing";
mp.style = 0;
mp.icon = "32512";
mp.helpId = 0;
mp.callback = IntPtr.Zero;
mp.languageId = 0;
mp.cbSize = Marshal.SizeOf(mp);
MessageBoxIndirect(ref mp);
}
}