android客户端控制PC音量

按键精灵Delphi插件开发完整教程 在自动化脚本开发领域,按键精灵作为一款功能强大的工具,广泛应用于游戏辅助、数据采集、流程自动化等多个场景。而插件系统则是其生态中极为关键的一环,它允许开发者通过扩展方式增强按键精灵的功能边界。插件的本质是通过DLL动态链接库与主程序进行交互,实现功能注入与调用。这种机制不仅提升了脚本的执行效率,也使得功能模块化、可维护性更强。对于资深IT开发者而言,掌握插件开发意味着能够更深入地理解Windows平台下的API调用、内存管理与跨语言通信机制。 阅读详情


前几天,躺在床上玩MX2,电脑放着歌,有点大声。突然想睡觉,但又懒得起床关掉电脑的音乐,无奈之下,就想,要是手机能控制电脑的声音就好了。于是就有了下面的故事:做一个android客户端,用来控制电脑的音量。

大概的思想如下:通过socket来通信,手机客户端通过socket绑定到PC,然后通过发送消失到PC,再由PC进行解析,并进行音量的控制。主要有以下两个阶段。


第一阶段:

PC端,由C++代码来实现,主要考虑到有些电脑不一定能运行java程序。之前很少接触过C++,虽然我现在的工作主要是用C的,但感觉还是差挺多。

之前并没有用C++来控制windows的系统音量,于是在网上查了挺久的资料,才发现需要用mixer来控制。控制的音量的代码如下,封装成一个函数:

void SetVolume(int volume)
{
	DWORD vol;
	HMIXER hMixer;
	MIXERLINE mixerline;
	MIXERLINECONTROLS mcls;
	MIXERCONTROL mc;
	MIXERCONTROLDETAILS mcd;
	MIXERCONTROLDETAILS_UNSIGNED mcd_u;
	
	vol = volume*70000/100;
	mcd_u.dwValue = vol;
	
	try
	{
		if(MMSYSERR_NOERROR == mixerOpen(&hMixer, 0, 0, 0, 0))
		{
			RtlZeroMemory(&mixerline, sizeof(mixerline));
			mixerline.cbStruct = sizeof(MIXERLINE);
			mixerline.dwComponentType = MIXERLINE_COMPONENTTYPE_DST_SPEAKERS;
			if(MMSYSERR_NOERROR == mixerGetLineInfo((HMIXEROBJ)hMixer, &mixerline, MIXER_GETLINEINFOF_COMPONENTTYPE))
			{
				RtlZeroMemory(&mcls, sizeof(mcls));
				mcls.cbStruct = sizeof(MIXERLINECONTROLS);
				mcls.dwLineID = mixerline.dwLineID;
				mcls.dwControlType = MIXERCONTROL_CONTROLTYPE_VOLUME;
				mcls.cControls = 1;
				mcls.cbmxctrl = sizeof(MIXERCONTROL);
				mcls.pamxctrl = &mc;
				
				//		mixerGetControlDetails((HMIXEROBJ)hMixer, (MIXERCONTROLDETAILS *)&mc, MIXER_GETCONTROLDETAILSF_VALUE);
				//		printf("mcd.bound.maxvolume:0x%x\n", mc.Bounds.lMaximum);
				//		printf("mcd.bound.minvolume:0x%x\n", mc.Bounds.lMinimum);
				
				if(MMSYSERR_NOERROR == mixerGetLineControls((HMIXEROBJ)hMixer, &mcls, MIXER_GETLINECONTROLSF_ONEBYTYPE))
				{
					RtlZeroMemory(&mcd, sizeof(MIXERCONTROLDETAILS));
					mcd.cbStruct = sizeof(MIXERCONTROLDETAILS);
					mcd.dwControlID = mc.dwControlID;
					mcd.cChannels = 1;
					mcd.cbDetails = sizeof(MIXERCONTROLDETAILS_UNSIGNED);
					mcd.paDetails = &mcd_u;
					if(MMSYSERR_NOERROR == mixerSetControlDetails((HMIXEROBJ)hMixer,&mcd, MIXER_SETCONTROLDETAILSF_VALUE))
					{
						return;
					}
					
				}
			}
		}
	}
	catch(...)
	{
	}
}

然后只要在main函数的socket中,在接收到客户端的数据后,解析出要设置的音量值,然后调用接口进行设置,就可以了。系统的音量有一个范围,大概是0~7000。如果你要设置的音量是30的话,那就要转换一下了,公式是:客户端传的音量值*7000/100,这样设置的结果才是你想要的效果。


第二阶段:android客户端实现

android刚接触没多少。不过由于之前接触过C#,感觉还是有些类似的。界面布局的话,差不多就一个配置文件。界面主要由一个输入IP的文本框,一个进行创建socket的按钮,以及一个拖动条组成。在创建socket的过程中,有一个问题困扰了我好久,创建socket进行连接的主要代码如下:

					sock = new Socket(tv_ip.getText().toString(), port);
					in = new BufferedReader(new InputStreamReader(sock.getInputStream()));
					out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(
							sock.getOutputStream())), true);
当我一点连接的时候,就异常了,也就是在一运行到sock = new Socket(tv_ip.getText().toString(), port);的时候,程序就异常了,虽然用try进行了捕获,但根本没有,让我好不郁闷,当时又还不怎么熟悉android的调试,也很少看调试信息。最后问了一个编程很牛的同学,在他的指教下,在网上查了下异常信息,才算解决了。具体可以看 http://k-beta.com/android-os-networkonmainthreadexception.html。

终于创建socket是OK了。接下来就是组织数据并发送数据的过程了,这个并没有遇到多大困难。后来又增加了两个按钮,一个是关闭电脑的,一个是重启电脑的。后期的话,还需要将C++的程序完善一下,让它在开机的时候就运行,这样就不用每次都手动去运行了。另外,android客户端也有很多要完善的地方。由于最近工作的原因,时间不够,就暂时搁了。

Advanced Volume Control:用智能手机控制计算机的声音!-开源 此应用程序仅在Windows 10上有效。将您的Smartphone连接到该程序,以控制您的所有设备与Android设备的音量。 您可以在Google Play商店中获取该应用程序,网址为https://play.google.com/store/apps/details?id=com.m1smr.avc。您需要Winrar或类似程序才能解压缩此处下载的.zip文件。 您可以在此处获得Winrar:https://www.win-rar.com/predownload.html?&f = wrar550.exe&spV = true&subD = true&L = 0积分:由MarcelRömerSoftware开发m1smr@m1smr.com Smashicons制作的徽标https ://www.flaticon.com/authors/smashicons 立即下载

相关推荐

从零开始!在 Windows 上安装与配置 Dify

这篇博客将详细介绍如何在 Windows 系统上部署 Dify,适合零基础用户。从 Docker 和 WSL 的安装配置开始,逐步指导用户设置 Git、Docker 环境以及 Dify 配置文件,解决可能遇到的端口冲突等问题,最终完成 Dify 的启动和测试。通过简明易懂的步骤,帮助用户在本地成功运行 Dify,实现模型供应商配置,让 Dify 项目在 Windows 平台上顺利上线。

qq_49035156的博客 5万+

电脑控制手机-帮你在电脑上录制手机屏幕和声音

为了制作手游攻略视频,我苦苦寻找录屏软件。要录手机屏,要同步录制声音,还要在电脑端录制,手机端的录屏软件不行。手游攻略主要是要看游戏竞技细节,手机屏实在太小,每次要在电脑端放大看,才发现瑕疵,导致反复录制,特别耗时。终于我找到了一款叫Total Control的手机投屏录屏软件,将手机投屏到电脑大屏,我一边录手机屏,一边在电脑端看手机画面,十分方便,同时手机声音一并录制,简单好用。Total Co...

lemon5814的博客 7724

ML307A模组通过MQTT协议接入OneNET平台的AT指令全解析

本文详细解析了ML307A模组通过MQTT协议接入OneNET平台的完整AT指令流程。从平台侧的产品创建、设备添加,到核心难点连接密钥的计算方法,再到模组侧的基础网络附着、MQTT连接配置、数据收发及调试排错,提供了手把手的实战指南,帮助开发者快速实现物联网设备上云。

weixin_29240711的博客 492

如何用手机控制电脑或电脑控制手机?

近期,App Store应用商店限免迎来一款强大的电脑遥控软件——MiniMouse。这款软件原价为12元,目前已经支持免费下载。MiniMouse不仅支持连接Windows XP/Vista/7/8/10和MAC电脑,同时还支持iPhone手机之间的互连,能够轻松帮助您使用手机控制电脑。下面来具体看看它的功能吧! 推荐阅读:How to Turn Android Phone into Wir...

Tech-Net的博客 1万+

大模型-internvl高通qnn运行源码解读

模型链接:https://huggingface.co/OpenGVLab/InternVL2-2B论文官方简要说明 https://internvl.github.io/blog/2024-07-02-InternVL-2.0中文解读 https://zhuanlan.zhihu.com/p/702946079在线demo https://internvl.opengvlab.com/

点滴的岁月 1832

ResNet改进(51):基于轴向注意力机制的改进ResNet模型

本文介绍了一种结合轴向注意力机制的改进ResNet模型。 通过在传统CNN中引入轴向注意力,我们能够在保持计算效率的同时,增强模型对图像全局上下文的理解能力。这种混合架构结合了CNN的局部特征提取优势和注意力机制的全局建模能力,在图像识别任务中表现出色。 轴向注意力机制的应用不仅限于ResNet,也可以灵活地集成到其他CNN架构中。 未来可以探索更多注意力变体,或将其应用于特定领域任务,如医学图像分析、自动驾驶等需要精确空间理解的场景。 希望本文能帮助你理解如何将注意力机制与传统CNN结合,为你的计

2401_82355416的博客 359

android控制手机系统声音

http://blog.youkuaiyun.com/zhudaozhuan/article/details/7366613 手机声音包含系统声音和媒体声音。在程序中,往往需要对手机系统声音进行控制,可以通过AudioManager类达到此效果。虽然是对系统声音进行控制,但是不需要注册任何系统权限。 [java] view plaincopy

leeo1010的专栏 1224

使用AI预测彩票的架构思路

彩票是随机的数字游戏,不要过度依赖AI,本文仅供娱乐研究

淘淘小窝 9408

按键精灵_按键精灵教程打码平台接入

金猪脚本(原飞猪脚本)以按键精灵教学为主,涉及UiBot,Python,Lua等脚本编程语言,教学包括全自动办公脚本,游戏辅助脚本,引流脚本,网页脚本,安卓脚本,IOS脚本,注册脚本,点赞脚本,阅读脚本以及网赚脚本等各个领域。想制作脚本和学习按键精灵的朋友可以添加按键精灵学习交流群:554127455 学习路上不再孤单,金猪脚本伴你一同成长.作为提高登陆或者操作的安全性的一种方式,验证码是最常见的...

weixin_28700181的博客 3992

Linux Namespace隔离实战:dd/mkfs/mount/unshare构建终极沙箱

内存占用 | 512MB+ | **<10MB** | 50倍节省 || 启动时间 | 15-45秒 | **0.1-0.5秒** | 100倍加速 || 磁盘空间 | GB级 | **MB级** | 显著减少 || 系统调用性能 | 有损耗 | **原生速度** | 零损耗 |

Loving_enjoy的博客 398

OpenClaw进阶实战(二十三):微信公众号接入——被动回复、客服消息、素材管理

本文介绍了将OpenClaw接入微信公众号的完整方案,重点包含以下内容: 接入方案选型:对比官方插件、三方服务和自建中转三种方式,选择自建Node.js中转服务实现灵活控制 核心原理:通过中转服务器完成微信消息协议转换,处理5秒超时限制和异步回复机制 实战开发: 搭建Express中转服务 实现Token管理和消息处理 采用内存缓存对话历史 通过客服接口异步回复 官方插件方案:介绍2026年发布的ClawBot插件,支持文本/图片/文件收发 进阶功能:包括素材管理接口调用示例 该方案适用于需要深度定制公众号

PeterPan的博客 142

安卓按键精灵_[按键精灵手机版教程]安卓3.0按键使用教程

金猪脚本(原飞猪脚本)以按键精灵教学为主,涉及UiBot,Python,Lua等脚本编程语言,教学包括全自动办公脚本,游戏辅助脚本,引流脚本,网页脚本,安卓脚本,IOS脚本,注册脚本,点赞脚本,阅读脚本以及网赚脚本等各个领域。想制作脚本和学习按键精灵的朋友可以添加按键精灵学习交流群:554127455 学习路上不再孤单,金猪脚本伴你一同成长.大家盼望已久的安卓3.0按键终于华丽丽的登场了。 想必大...

weixin_35795675的博客 4938

【赛题解析&命令脚本配置】2023年全国职业院校技能大赛GZ073网络系统管理赛项赛题第10套模块A:网络构建 & (五)网络运维配置+(六)SDN网络配置-命令配置

【赛题解析&命令脚本配置】2023年全国职业院校技能大赛GZ073网络系统管理赛项赛题第10套模块A:网络构建 & (五)网络运维配置+(六)SDN网络配置-命令配置

君逍遥o 809

ios 按键精灵_按键精灵手机助手【v3.3免root使用方法】

1、目前免ROOT支持点一点、本地脚本的使用,录制和调试暂不支持免ROOT使用;(1)点一点:点击底部的+号即可新建点一点脚本,然后必须通过“已下载”列表中启动游戏或应用(通过桌面启动将导致无法免root)。(2)本地脚本:点击“我的”可以查看本地脚本,选择要运行的脚本后,必须通过“已下载”列表中启动游戏或应用(通过桌面启动将导致无法免root)。(3)需要使用录制和调试功能的话,请将手机连接电脑...

weixin_39685024的博客 4739

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

python调用按键精灵插件_按键精灵教程打码平台接入

金猪脚本(原飞猪脚本)以按键精灵教学为主,涉及UiBot,Python,Lua等脚本编程语言,教学包括全自动办公脚本,游戏辅助脚本,引流脚本,网页脚本,安卓脚本,IOS脚本,注册脚本,点赞脚本,阅读脚本以及网赚脚本等各个领域。想制作脚本和学习按键精灵的朋友可以添加按键精灵学习交流群:554127455 学习路上不再孤单,金猪脚本伴你一同成长.作为提高登陆或者操作的安全性的一种方式,验证码是最常见的...

weixin_39520353的博客 1177

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

按键精灵的发展

按键精灵的发展 按键精灵于2001年7月7日诞生,至今已经十年了。在这期间经历了很多变迁,而如今按键精灵依然挺立于中国原创软件行列,并获得了越来越多朋友的支持与认同! 在这十年期间按键精灵一直专注于研发易学易用的软件制作工具,并提供多种低成本的软件销售解决方案,为没有受过专业计算机教育的人提供了创业之路。 按键一路走来按键精灵发布了1.0、2.0......9.0等9个版本,从最初的只有键盘鼠标命...

Songxiaoc的博客 1671

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

怎么写安卓手机脚本_史上最牛掰按键精灵手机版教材

这篇教程给大家介绍一下按键精灵手机助手的相关操作和用途.,下图就是按键精灵手机助手的编辑界面.下面我们讲解一下什么是按键精灵手机助手,以及按键精灵手机助手的用途,相信大部分使用按键精灵的朋友都是从按键精灵的APP或者按键小精灵(即指脚本),又或者是从游戏蜂窝中认识的按键精灵,对于新手朋友来说可以对于按键精灵手机助手并不是很熟悉.导致绝大多数朋友对于按键精灵手机助手都很陌生.从而产生了脚本开发的误区...

weixin_39910963的博客 2074

IOS版aplayer使用教程_[按键精灵手机版教程]安卓3.0按键使用教程

金猪脚本(原飞猪脚本)以按键精灵教学为主,涉及UiBot,Python,Lua等脚本编程语言,教学包括全自动办公脚本,游戏辅助脚本,引流脚本,网页脚本,安卓脚本,IOS脚本,注册脚本,点赞脚本,阅读脚本以及网赚脚本等各个领域。想制作脚本和学习按键精灵的朋友可以添加按键精灵学习交流群:554127455 学习路上不再孤单,金猪脚本伴你一同成长.大家盼望已久的安卓3.0按键终于华丽丽的登场了。 想必大...

weixin_39757743的博客 973

python游戏按键无效_叨叨一下按键精灵团队新上线的UiBot

这是奔跑的键盘侠的第91篇文章前一阵按键精灵的弹窗广告换成了企业UiBot,这让我眼前一亮,今天总算有点时间一探究竟。相信大家都知道按键精灵的妙用,早期应用比较广泛的场景有游戏挂机、办公辅助,以及衍生出的很多其他用途。而按键精灵的赢利点无非这么几个:VIP会员,脚本交易区佣金,弹窗广告以及网站的其他商务合作等等。虽说这些年也出了很多附加产品,诸如按键精灵安卓版、简单游、商业小精灵等等,后...

weixin_39875760的博客 983

python 桌面精灵_金猪脚本教大家如何制作按键小精灵

金猪脚本(原飞猪脚本)以按键精灵教学为主,涉及UiBot,Python,Lua等脚本编程语言,教学包括全自动办公脚本,游戏辅助脚本,引流脚本,网页脚本,安卓脚本,IOS脚本,注册脚本,点赞脚本,阅读脚本以及网赚脚本等各个领域。想学习按键精灵的朋友可以添加金猪脚本粉丝交流群:554127455 学习路上不再孤单,金猪脚本伴你一同成长.怎么制作按键小精灵看下面流程一、什么是按键小精灵 按键小精灵是把按...

weixin_39934640的博客 854

Python&按键精灵自动化_Python基础:了解Python与pycharm

认识 Python 人生苦短,我用 Python —— Life is short, you need Python目标Python 的起源为什么要用 Python?Python 的特点Python 的优缺点01. Python 的起源 Python 的创始人为吉多·范罗苏姆(Guido van Rossum)1989 年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的解释程...

weixin_39886251的博客 799

炉石传说JAVA脚本怎么写_安卓按键精灵源码分享,安卓炉石传说脚本

本帖最后由 ugly 于 2019-4-9 18:34 编辑为了避免争吵,本帖不适应无编程基础的人或很酸的人,请alt+F4谢谢。之前本人发布的炉石传说安卓自动刷金币使用经常出问题,原因在于本人特懒。 所有循环均写在一个Do loop 循环内。所以有些小毛病,关键懒得更新了。自己没啥问题,所以把几个自用的函数发布出来和使用教程。有任何编程语言基础均可写出比楼主更好的逻辑判断的脚本。附带楼主自动的源...

weixin_39884078的博客 3710

来也科技总裁、按键精灵之父,给开发者的一封信

2021 年 7 月,Gartner 发布了《2021 年 RPA 魔力象限》报告。来也科技作为首次入围的中国厂商代表,与 UiPath 等全球 18 家 RPA 厂商被重点推荐。Gartner 特别指出来也科技的优势之一是“合作伙伴和开发者生态”,认为拥有 500 多个合作伙伴、超过 40 万名开发者,是来也科技相比于其他厂商的巨大优势,这是一股足以颠覆行业生态的强大力量! 40 多万中国 RPA 开发者!自此,闪亮登场,正式亮相于世界级权威推荐。 来也科技联席 CEO 兼总裁,按键精灵之父李玮,发出了这

sunsorrow的博客 1848

安卓setclicklistener函数没有_几十年都没有这么全了命令

本帖持续更新按键精灵手机版图文解答,解答内容包含6大部分第1部分:零基础入门讲解和环境搭建图文讲解.第2部分:基础命令和运算符命令实战图文演示.第3部分:扩展命令和标准库函数命令图文讲解分析.第4部分:插件命令,文件操作命令,多线程命令实操图文讲解.第5部分:静态UI界面和动态UI界面以及通过emoji美化UI界面图文解答.第6部分:实战教程图文思路分解,包括全自动办公脚本,游戏辅助脚本,引流脚本...

weixin_39555715的博客 69
上一篇: jmeter之“聚合报告”
下一篇: OnClickListener启动对应按钮的Activity
rfasm
博客等级 码龄17年 2粉丝 6原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值