[zt]再谈QQ自动登陆器:提供C#源码下载(下)
来源:互联网 发布:ios unity3d 使用 编辑:程序博客网 时间:2024/04/18 09:08
上次提到的QQ自动登陆器C++版本,其技术太过低级,但是所用方法在其他的应用中作用强大,尤其是外挂程序。其实就QQ登录来说有其接口的,用C#代码描述就一条语句:
1Process.Start(qqPath, "/START QQUIN:" + strAcntNum + " PWDHASH:" + strAcntPsw + " /STAT:" + (blAcntSts ? "40" : "41"));2
其中 qqPath为QQ程序路径,strAcntNum为QQ号码,strAcntPsw为QQ的Hash值,布尔类型blAcntSts为登录状态,即是否隐身。 简单吧,看来QQ自动登陆器是没有技术含量了,今天就设计过程中的其他技术作一介绍:(1)注册表中添加QQ程序路径和登陆器程序打开密码 1 public static string SetQQRegistryValue(string key, object value) 2 { 3 RegistryKey pregkey = Registry.CurrentUser.OpenSubKey(Constants.STR_QQ_REG_PATH, true); 4 if (pregkey == null) 5 { 6 pregkey = Registry.CurrentUser.CreateSubKey(Constants.STR_QQ_REG_PATH, RegistryKeyPermissionCheck.ReadWriteSubTree); 7 pregkey.SetValue(key, string.Empty); 8 pregkey.Close(); 9 return string.Empty;10 }11 else12 {13 pregkey.SetValue(key, value);14 pregkey.Close();15 return value.ToString();16 }1718 }1920 public static string GetQQRegistryValue(string key)21 {22 RegistryKey pregkey = Registry.CurrentUser.OpenSubKey(Constants.STR_QQ_REG_PATH, true);23 if (pregkey == null)24 {25 pregkey = Registry.CurrentUser.CreateSubKey(Constants.STR_QQ_REG_PATH, RegistryKeyPermissionCheck.ReadWriteSubTree);26 }27 object value = pregkey.GetValue(key);28 pregkey.Close();29 if (value == null)30 {31 return string.Empty;32 }33 else34 {35 return value.ToString();36 }37 }38
(2)序列化QQ帐号信息到文件 1public static List<QQAccount> Get(string path) 2 { 3 if (qqInfoList == null) 4 { 5 FileStream fs = null; 6 try 7 { 8 XmlSerializer xs = new XmlSerializer(typeof(List<QQAccount>)); 9 fs = new FileStream(path, FileMode.Open, FileAccess.Read);10 qqInfoList = (List<QQAccount>)xs.Deserialize(fs);11 fs.Close();12 return qqInfoList;13 }14 catch15 {16 if (fs != null)17 fs.Close();18 return null;19 }2021 }22 else23 {24 return qqInfoList;25 }26 }2728public static void Set(string path, List<QQAccount> qqList)29 {30 if (qqList == null)31 throw new Exception("Parameter is null!");3233 FileStream fs = null;34 try35 {36 XmlSerializer xs = new XmlSerializer(typeof(List<QQAccount>));37 fs = new FileStream(path, FileMode.Create, FileAccess.Write);38 xs.Serialize(fs, qqList);39 fs.Close();40 }41 catch42 {43 if (fs != null)44 fs.Close();45 throw new Exception("Xml serialization failed!");46 }47 }
(3)Hash处理登录密码 1 public static string HashBase64(string str) 2 { 3 byte[] result = new byte[str.Length]; 4 try 5 { 6 MD5 md = new MD5CryptoServiceProvider(); 7 result = md.ComputeHash(System.Text.Encoding.UTF8.GetBytes(str)); 8 return Convert.ToBase64String(result); 9 }10 catch11 {12 return "";13 }14 }15
如下提供源码下载,作的粗糙,原谅!如有更好的建议请留言!源码下载
- [zt]再谈QQ自动登陆器:提供C#源码下载(下)
- [zt]再谈QQ自动登陆器:提供C#源码下载(下)
- QQ自动登陆器
- ubuntu下QQ下载和登陆(pidgin)
- 软件自动安装管理器 -提供源码下载
- C# UDP通信实现(提供源码下载)
- 登陆器源码C#
- C++、VC++、MFC网页自动注册、登陆、发帖、留言,QQ注册、QQ申请器源码、注册邮箱源码、自动发帖源码
- C、C++、VC、MFC网页自动注册、登陆、发帖、留言 QQ注册、QQ申请器源码、源代码
- QQ批量自动登陆
- EntLib.com Blog 开源ASP.NET/C# 博客平台 v2.5 发布(提供源码下载)
- EntLib.com Blog 开源ASP.NET/C# 博客平台 v3.0 发布(提供源码下载)
- EntLib.com Blog 开源ASP.NET/C# 博客平台 v3.1 发布(提供源码下载)
- 自动登陆qq空间代码
- NET2.0环境下的Ajax选型和应用(提供Demo源码下载)
- linux 下 自动登陆 SFTP 服务器 下载文件
- QQ自动消息源码
- QQ自动登陆器-测试版-不更新
- 選択
- Subversion源代码仓库规划一例
- table 属性和标签
- [转]苹果雄起之我见
- 小升初随感--年年小升初,一段辛酸史
- [zt]再谈QQ自动登陆器:提供C#源码下载(下)
- 面对现实
- 深入浅出理解索引结构
- oracle 的redo和undo
- 实施经理的工具箱--走出软件作坊:三五个人十来条枪 如何成为开发正规军(五)
- 让火狐3.0支持老板键
- 简体与繁体字符串之间的转换
- 生活的思想也需要创新
- 电子商务下一站:由网络消费媒体导向——电子商务发展趋势探析之二