ClassFile.cs
using System;
using System.Runtime.InteropServices;
using System.Collections.Generic;
using System.Text;
using System.IO;
namespace VeriMoney.Call
{
public class Win32
{
public const int WM_COMMAND = 0x7fff;
[DllImport("User32.dll")]
public static extern int FindWindow(string strClassName,string strWindowName);
[DllImport("User32.dll")]
public static extern int FindWindowEx(string hwndParent,string hwndChildAfter, string strClassName, string strWindowName);
[DllImport("user32.dll")]
public static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
//Overload for string lParam (e.g. WM_GETTEXT)
[DllImport("user32.dll")]
public static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, [Out] StringBuilder lParam);
[DllImport("User32.dll")]
public static extern Int32 SendMessage(
int hWnd, // handle to destination window
int Msg, // message
int wParam, // first message parameter
[MarshalAs(UnmanagedType.LPStr)] string lParam);
[DllImport("User32.dll")]
public static extern Int32 SendMessage(
int hWnd, // handle to destination window
int Msg, // message
int wParam, // first message parameter
int lParam);
[DllImport("kernel32.dll")]
public static extern int GlobalAddAtom(String atomString);
[DllImport("kernel32.dll")]
public static extern int GlobalDeleteAtom(int atom);
public Win32()
{
}
~Win32()
{
}
}
}
and ExcuteFile.cs
using System;
using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
using System.Net;
using System.Security.Cryptography;
using System.Xml;
using System.Runtime.InteropServices;
namespace VeriMoney.Call
{
public class Calling
{
public void call()
{
string str = "+821234567;&LANG=EN&TID=9047026&TT=SM&PM=Credit Card&CT=American Express&CN=4000111122223333&TA=345,000 Japanese Yen";
char[] charArray = str.ToCharArray();
System.Int32 iHandle;
iHandle = Win32.FindWindowEx(null, null, null, "IVM Answering Attendant");
int atomResult = Win32.GlobalAddAtom(str);
int result = Win32.SendMessage(iHandle, 0x7fff, 4, atomResult);
Win32.GlobalDeleteAtom(atomResult);
}
}
}