C# PC版微信消息监听自动回复的实现方法版微信消息监听自动回复的实现方法
主要介绍了C# PC版微信消息监听自动回复的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需
要的朋友们下面随着小编来一起学习学习吧
最近有个微商客户需要搞个 个人微信监听群消息关键字并实现自动回复功能, 因为他有很多群 很多买家咨询的话 一个个回复太麻烦, 客户要求 比如群里有人发 关
键字 产品1 则自动回复产品1的相关描述
首先设置关键字,将关键字和回复内容存到一个txt就行
然后就是微信消息监听(windows的消息 句柄不懂的自己 google):
/// 消息主要接受程序
/// </summary>
/// <param name="m"></param>
protected override void DefWndProc(ref Message m)
{
switch (m.Msg)
{
case 74: //74代表WM_COPYDATA
string message = "";
int f = (int)m.WParam;
try
{
COPYDATASTRUCT2 cds2 = (COPYDATASTRUCT2)m.GetLParam(typeof(COPYDATASTRUCT2));
message = Marshal.PtrToStringAnsi(cds2.lpData);
}
catch (Exception e)
{
LogHelper.WriteLog("解析微信消息报错", e); //发文字带空格报错
}
switch (f)
{
//登录时解析用户信息
case 10003:
try
{
if (!string.IsNullOrEmpty(message))
{
MessageHandler.Parse10003(message);
}
this.Invoke(new MethodInvoker(() => { richTextBox1.AppendText("【" + MessageHandler.myUserInfo.UserName + "】登录成功!"); }));
}
catch (Exception e1)
{<br> LogHelper.WriteLog("解析微信登录用户信息错误", e1);
}
return;<br>
//文字,图片,视频,文件 解析
case 10012:
try
{
if (message.Contains("msgtyp:"))
{
string[] datas = Regex.Split(message, "msgtyp:", RegexOptions.IgnoreCase);
if (datas.Count() >= 2)
{
string msgtyp = datas[1].Split(',')[0];
switch (msgtyp.Replace(" ", ""))
{
case "1": //文字
if (message.Contains("[群-->]") && message.Contains("[消息内容-->]"))
{
string word = ""; //发送内容
//取消息内容
string[] wordArr = Regex.Split(message, @"消息内容-->]", RegexOptions.IgnoreCase);
string[] aa = wordArr[1].Split(new string[] { "||" }, StringSplitOptions.RemoveEmptyEntries);
if (aa[0].StartsWith(" "))
{
word = aa[0].Substring(1);
}
else
评论1
最新资源