Winform调用QQ发信息并且开机启动 (开源)

前言


公司CS系统需要加入启动qq从winform调用qq聊天窗口的功能,前提是需要将聊天者的QQ号码作为参数传递到函数中,一直没有搞过,正好很感兴趣,就折腾,Winform调用qq,我想肯定是需要一些编码思路,下面列出编码前思路图

  1. 检查QQ安装后在注册表中的具体路径

  2. 根据注册表找到调用QQ程序的exe完整路径(Timwp.exe)

  3. 启动,达到winform调用QQ的要求

先看简单测试界面

步骤1

找到QQ的注册表路径,经过百度之后分析得到思路,正确的路径

32位QQ安装后注册表路径SOFTWARE\Tencent\QQ2009

64位QQ安装后注册表路径SOFTWARE\Wow6432Node\Tencent\QQ2009

64位系统注册表路径截图演示

步骤2

当我们找到注册表的路径后就已经很开心,就可以通过这个路径通过方法得到QQ实际安装路径在系统中的安装路径,图中就是需要我们启动的QQ安装的实际程序路径,得到这个路径就一次接近80%了。

步骤3

这一步再完成10%的代码,请求这个exe文件的时候,我们肯定需要提供给它,聊天的qq号码是什么,需要构建启动该进程时传递的命令行实参,也就是这一行代码,相信大家都看得懂,你只需要着一行字符串,作为启动进程的参数就可以了。

步骤4

将找到的文件路径和请求参数字符串作为参数调用启动进程资源就ok,100%了

成功效果图

截止到上面,我们完成了winform调用QQ快捷聊天的功能,下面说一下网页调动的方法

分析:启动浏览器进程,打开特定请求QQ链接的URL

效果截图:

下面来看个难一点的就是开机启动,对于很多的CS程序,开机启动都是一个比较好的,让客户认识记住软件的小方法,但是现在360太强大,经常动不动就说这个程序影响开机速度,不得很多程序被他给阻挡,但是这里因为兴趣爱好,还是研究一下。

分析思路

  1. 跟注册表有关,开机启动也是注册表中的某个路径

  2. 将指定启动的程序字符串写入注册中

  3. 开机自动会启动

下面系统代码截图

运行调试截图:

管理员身份运行截图:

在运行调试的过程中,由于测试电脑系统是win8,安全等级比较高,一直没有权限写入注册表,如果是以管理员身份启动就可以写入注册表中

开源代码:http://download.csdn.net/detail/mryanghenglian/7353877

希望对大家有用,可以加入我的群:,请尊重我的劳动成果,转载请说明来源,谢谢

如果你觉得文章对你有帮助,可以收藏下次项目中遇到了可以翻出来研究一下,还希望大家可以推荐一下

Winform调用QQ发信息并且开机启动 (开源),布布扣,bubuko.com

时间: 2024-12-23 09:07:39

Winform调用QQ发信息并且开机启动 (开源)的相关文章

【转】C# Winform打包部署时添加注册表信息实现开机启动

使用VS自带的打包模块可以很方便的对项目进行打包部署,同时我们也可以在安装部署时操作注册表实现开机启动软件.具体实现如下: 1.添加安装部署项目后,鼠标右键安装项目->视图->注册表,HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run中 添加键值保存软件目录.    注意:默认的可能只有HKEY_CURRENT_USER\Software\[Manufacturer],没关系,我们依次添加以上的项即可.即:HKEY_C

c# winform 打包部署 自定义界面 或设置开机启动

添加安装部署项目后,鼠标右键安装项目->视图->注册表, 要使软件在开机就运行,可以在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run中 添加键值保存软件目录.在这里我们依次添加以上的项,然后在Run中添加键值,键名可以自己起,value要填软件的物理路径.物理路径是客户在部署确定 的,我们如何获取呢?这里我们可以使用[TARGETDIR]获取客户选择的路径,在加上软件的启动文件名称.比如软件启动文件的名称是 Cli

windows10下设置Tomcat开机启动图解教程

ipconfig 查看IP详细信息 startup.bat  启动Tomcat netstat -ano|findstr 8080 查看某一具体端口连接状态 netstat -ano 查看所有端口连接   linux下类似命令,直接查看端口 #lsof -i:8080 #ps -aux|grep 8080 #ps -ef|grep 8080 telnet 主机名  端口名 例:telnet localhost 8080 连接本地主机端口8080 连接成功后会显示一片空白,按Ctrl+]键 ,再按

C# winForm程序开机启动和托盘显示 (转http://blog.csdn.net/xinyue3054/article/details/6599508)

这段时间一直进行cs项目,故整理下开机自动运行.托盘.显示.隐藏. (1).在窗口上点击关闭按钮或者最小化时将托盘显示: (2).双击托盘图标显示窗口: (3).右键点击托盘图标提供三个菜单选项,“退出”.“隐藏”.“显示”: (4).程序可以设置开机启动,隐藏任务栏显示.就这四个小功能. 1.建一个WinForm程序—FormAuto,将其属性ShowInTaskbar改为false,这样程序将不会在任务栏中显示:将MaximizeBox属性设置为false,屏蔽掉最大化按钮:把StartPo

C# Winform 注册程序开机启动

1 开机启动 public static bool SetAutoRun(string keyName, string filePath) { try { RegistryKey Local= Registry.LocalMachine; RegistryKey runKey =Local.CreateSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run\"); runKey.SetValue(keyName, filePath)

winform 程序开机启动

private void Form1_Load(object sender, EventArgs e) { try { //程序运行位置 string R_startPath = Application.ExecutablePath; //对应于HKEY_LOCAL_MACHINE主键 RegistryKey R_local = Registry.LocalMachine; //开机自动运行 RegistryKey R_run = R_local.CreateSubKey("SOFTWARE\\

[开机启动]Linux开机自启和运行级别

嵌入式系统中程序自启动方法 在很多嵌入式系统中,由于可用资源较少,常常在系统启动后就直接让应用程序自动启动,以减少用户操作和节省资源.如何让自己的应用程序自动启动呢?    在Linux系统中,配置应用程序自动启动的方法有以下三种:1.通过/Linuxrc脚本直接启动Linux内核一旦开始执行,它将通过驱动程序来初始化所有硬件设备,这个初始化过程可以在启动时的PC显示器上看到,每个驱动程序都打印一些相关信息.初始化完成后,通常调用的是init,通过loader调用init内的init=/app_

Linux开机启动十步骤

开机过程指的是从打开计算机电源直到LINUX显示用户登录画面的全过程.分析LINUX开机过程也是深入了解LINUX核心工作原理的一个很好的途径. 启动第一步--加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信息.设备启动顺序信息.硬盘信息.内存信息.时钟信息.PnP特性等等.在此之后,计算机心里就有谱了,知道应该去读取哪个硬件设备了.在BIOS将系统的控制权交给硬盘第一个扇区之后,就

CentOS开机启动流程简介

我们都知道按下电脑电源键后,屏幕上会一闪而过很多信息,然后显示登录界面,然后输入用户名,密码就可以畅享网络世界了.那么这中间到底发生了什么呢,今天就让我们来简单探讨一下CentOS的简易版开机启动流程吧. 第一阶段:通电自检过程 我们都知道电脑所有数据指令都是在内存上才能被cpu处理的吧,我们还知道内存在断电后其上面的所有数据都会丢失吧,那么开机的时候内存应该是没有东西的吧,那上面都不能干了,更别说启动一个操作系统了,其实啊,我们内存并不只是我们常见的那个内存卡,很多硬件都会映射一段内存到cpu