前段时间看群里挺多讨论 微博api,正好前几天看到有个微博遥控器这东西,可以通过发微博(手机..........各种终端效果都一样)来控制电脑,看了看实现起来也不怎么复杂,整个这东西玩玩,顺便熟悉熟悉 微博api。

开发环境 vs2010

实现方法很简单

1.通过api取最新的一条微博
2.通过微博的内容控制电脑做相关操作 如:关机,取消关机,重启,摄像头截图,屏幕截图等

使用方法

1.运行QAPITool.exe后点确定(里面的appkey appsecret最好是自己在腾讯微博应用开发页面自己申请)

2.在打开的授权页面中输入你的腾讯微博账号

3.把的到的授权码输入到文本框里面

4.点击开启

5.之后就可以通过你的微博输入相关命令(关机,取消关机,重启,摄像头截图,屏幕截图)来控制电脑了

具体实现代码

1.下载腾讯微博C# sdk ,有个api调试工具,方便调试使用

http://open.t.qq.com/resource.php

2.添加一个计时器,定时取最后一条微博
OauthKey oauthKey = new OauthKey();
oauthKey.customKey = appKey;
oauthKey.customSecret = appSecret;
oauthKey.tokenKey = accessKey;
oauthKey.tokenSecret = accessSecret;
string ret;
UTF8Encoding utf8 = new UTF8Encoding();
statuses st = new statuses(oauthKey, "json");
ret = st.broadcast_timeline(0, 0, 1, 0);

3.解析返回json数据

JObject response = JsonConvert.DeserializeObject<JObject>(str);
JObject data = JsonConvert.DeserializeObject<JObject>(response["data"].ToString());
JObject info = JsonConvert.DeserializeObject<JObject>(data["info"].First.ToString());
string id = info["id"].ToString().Replace("\"", "");

3.判断这个微博是不是最新发送的
从返回的数据中取出 微博id 跟text 里面的数据 ,
通过比较取出的微博id 跟电脑中保存的id 是否一致来判断是不是新发送的

如果是新的就执行微博中的控制命令,并更新保存的id

StringBuilder sb = new StringBuilder(255);
GetPrivateProfileString("Config", "ID", "", sb, sb.Capacity, configpath);
string oldID = sb.ToString();
if (id != oldID)
{
string text = info["text"].ToString().Replace("\"", "");
WritePrivateProfileString("Config", "ID", id, configpath);
ProcessCommand(text);
}

4.通过这条微博控制电脑做相关操作
5.重启代码
Process.Start("shutdown", "-r -f -t 300");
6.关机代码

Process.Start("shutdown", "-s -f -t 300");

取消关机

Process.Start("shutdown", "-a");

7.屏幕截图

var temp1 = Environment.GetEnvironmentVariable("TEMP");
var picPath1 = string.Format("{0}\\{1}.jpg", temp1, Guid.NewGuid());
Class1.GetScreen(picPath1);
if (File.Exists(picPath1))
Send(picPath1);
8.摄像头截图
var temp = Environment.GetEnvironmentVariable("TEMP");
var picPath = string.Format("{0}\\{1}.jpg", temp, Guid.NewGuid());
Class1.GetCamera(picPath, this.pictureBox1);
if(File.Exists(picPath))
Send(picPath);
break;

9.把截取到的图片发送到微博上

OauthKey oauthKey = new OauthKey();
oauthKey.customKey = appKey;
oauthKey.customSecret = appSecret;
oauthKey.tokenKey = accessKey;
oauthKey.tokenSecret = accessSecret;
t twit = new t(oauthKey, "json");

string ret;
ret = twit.add_pic("pic", "127.0.0.1", "", "", file);

如果你发现有什么不合理的,需要改进的地方,邮件联系328452421@qq.com(qq常年不在线,邮件联系)朱晓 。相互交流 谢谢

顺便问下 有家是新泰的没。

下载地址 http://download.csdn.net/source/3457382

通过发微博控制电脑的程序源码相关推荐

  1. 计算机毕业设计ssm个人微博网站1x930系统+程序+源码+lw+远程部署

    计算机毕业设计ssm个人微博网站1x930系统+程序+源码+lw+远程部署 计算机毕业设计ssm个人微博网站1x930系统+程序+源码+lw+远程部署 本源码技术栈: 项目架构:B/S架构 开发语言: ...

  2. 又发福利!日历小程序源码

    继续分享99个小程序源码. 本期分享的小程序是是一个日历小程序,可以实现上下翻页的.这个小程序是单机版的,导入开发工具就可以运行,开发者可以在此基础上根据业务场景二次开发. 如上图所示,可以展示星期几 ...

  3. 游戏抽奖计算机原理,VB6.0编写电脑抽奖程序源码教程

    近年来在娱乐节目之中常常见到利用电脑来抽奖,笔者对其发生了兴趣遂自己动手用VB编了一个小程序来实现电脑抽奖的小功能,其原理如下: 主要利用VB中的Rnd函数,来实现随机查找和打乱排序的功能,从而实现随 ...

  4. 寄快递邮寄发件上门邮寄小程序源码+前端+后端+安装说明

    新快递小程序快递代发快递代寄寄件小程序可以对接易达云洋一级总代 快递小程序,接入云洋/易达物流接口,支持选择快递公司,三通一达,极兔,德邦等,功能成熟 如何收益: 1.对接第三方平台成本大约4元左右一 ...

  5. 使用安卓模拟器获取任意小程序源码完整教程(多图预警!)

    刚刚get到一个新技能,趁着热乎赶紧整理出来分享给大家.本教程适用于任何小程序的反编译,但大多数项目都做了代码的压缩混淆,尤其是使用第三方框架的.而且小程序开发工具也会做一层编译,所以破解得到的项目实 ...

  6. java毕业设计——基于java+SSM+Oracle的微博系统设计与实现(毕业论文+程序源码)——微博系统

    基于java+SSM+Oracle的微博系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+SSM+Oracle的微博系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦 ...

  7. 【腾讯连连 腾讯物联网入门学习 第3篇】安信可IoT微信小程序全面开源,小程序上实现一键配网+控制+绑定!(源码开放)

    文章目录 一.简介 二.开发指导 2.1 腾讯物联开发平台配置 2.2 微信小程序导入步骤 三.设备开发 3.1 AT直连对接 3.2 SDK二次开发 四.本人开源微信物联网控制 一览表 另外,不要把 ...

  8. Arduino毕业设计——基于Arduino+PID+AI的自动驾驶小车控制系统设计与实现(毕业论文+程序源码)——自动驾驶小车控制系统

    基于Arduino+PID+AI的自动驾驶小车控制系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于Arduino+PID+AI的自动驾驶小车控制系统设计与实现,文章末尾附有本毕业设计的 ...

  9. 微信小程序:微信也可以发闪照了闪照制作生成微信小程序源码下载,自定义闪照时间

    这是一款闪照制作的一款微信小程序源码 该源码呢也就是让用户在微信也可以实现QQ上面的闪照功能 用户可以自主上传照片,可以自定义的选择闪照的时间 另外这款小程序还支持流量主模式 这种东西目前在微信还是挺 ...

最新文章

  1. Chapter 2 Open Book——34
  2. python3 实现 php bin2hex 函数
  3. Hark的数据结构与算法练习之基数排序
  4. http method
  5. VTK:截锥体用法实战
  6. 2013\Province_Java_C\2.组素数
  7. 浙大计算机系可以转专业吗,求教。。浙大转专业容易吗
  8. 总结几个字符串类的动态规划(最长公共子串,回文子串,子序列)
  9. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十九)ES6.2.2 安装Ik中文分词器
  10. Nginx从入门到掌握【(第3节(共3节)】
  11. 微信公众号装b神器生成引流系统源码
  12. 虚拟机安装SQLService启用windows功能NetFx3时出错
  13. 量化投资学习-30:股性与人性,从傅里叶变换谈谈股市大V的操作风格的观察
  14. 艰辛坎坷的360崛起之路
  15. 啦啦啦啦啦啦啦啦啦啦啦啦
  16. Android面试知识点复习,那些不为人知的秘密
  17. 如何解决 cannot be cast to java.lang.Comparable问题?
  18. OLAP实践 —— OLAP基本概念理解总计小记
  19. Redis(二)——复制
  20. SAP High Avaliability offering

热门文章

  1. 经典回顾《阿甘正传》之音乐篇(三)
  2. 忘记Word文档密码?这里有解!
  3. QT release 版本方法
  4. Windows安装Git
  5. 京东财报释放长期利好,刘强东正在建立“很宽的护城河”
  6. 【Java内存溢出排查】gc监测以及内存突增问题排查
  7. 弹弹堂之 弹坑技术
  8. 更新Linux服务器时间
  9. ●●教你如何在鼠标右键中添加excel,word,ppt的快捷方式
  10. 2003安装mysql server 2008_Win2003系统下SQL Server 2008安装图解教程(详细图解)