关于C# 向TIM或者QQ自动发送中文消息【微信也是可用的】 附测试GIF中微信可用的 全新修订
在上一篇文章的代码 对于微信已失效
重新更新一边
效果图:
源代码
using System; using System.Runtime.InteropServices; using System.Threading; using System.Windows.Forms; namespace TestForWechat { class Program { [DllImport("user32.dll")] static extern IntPtr FindWindow(String ClassName, String WindwosName); [DllImport("user32")] static extern int SetForegroundWindow(IntPtr hwnd); public static string sendmsg; public static int Count; public static readonly string ClassNameForWeChat= "WeChatMainWndForPC"; [STAThread] static void Main(string[] args) { ReadMe(); Init(); while(IsContinue()) Init(); } static void ReadMe() { Console.WriteLine("请不要发送大量次数,本程序是每次发送字符时候都会强制焦点微信窗口"); Console.WriteLine("使用方式:"); Console.WriteLine("一:确保微信发送的接收方正确"); Console.WriteLine("二:输入发送的字符"); Console.WriteLine("三:输入发送次数"); } static void Work() { while (Count > -1) { Thread.Sleep(TimeSpan.FromMilliseconds(50)); SendKey(ClassNameForWeChat); Count--; Console.WriteLine("发送次数" + Count); } Console.WriteLine("发送完毕"); } static bool IsContinue() { bool rest = false; Console.WriteLine("是否继续?(Y/N)"); var key = Console.ReadKey(); switch(key.KeyChar) { case 'y': case 'Y': rest = true; break; case 'N': case 'n': rest = false; break; } Console.WriteLine(); return rest; } static void Init() { Console.WriteLine("要发送的字符"); sendmsg = Console.ReadLine(); Console.WriteLine("要发送的次数"); Count = int.Parse(Console.ReadLine()); Console.WriteLine(); Work(); } static void SendKey(string name) { IntPtr win =FindWindow(name,null); SetForegroundWindow(win); SendKeys.SendWait(sendmsg); SendKeys.SendWait("{ENTER}"); } } }