原文转自 https://blog.csdn.net/rankun1/article/details/50972990 #include "stdafx.h" #define SAFE_RELEASE(punk) \ if ((punk) != NULL) \ { (punk)->Release(); (punk) = NULL; } #include <mmdeviceapi.h> #include "iostream" using namesp…
我们做USB通信时,通信成功后,往往要检测USB设备的拔插状态,这里就USB拔插进行一下说明. 参考:https://www.imooc.com/article/17438 先说明一下,我这里只是用C#写上位机的自定义USB设备的检测,是调用window的DLL来实现USB设备通信的,具体通信过程说明,我会在后期补上. 要实现USB插拔检测,就不得不说到WM_DEVICECHANGE 消息了,当设备被插入/拔出的时候,WINDOWS会向每个窗体发送WM_DEVICECHANGE 消息,而WM_D…
// usb消息定义 public const int WM_DEVICE_CHANGE = 0x219; public const int DBT_DEVICEARRIVAL = 0x8000; public const int DBT_DEVICE_REMOVE_COMPLETE = 0x8004; public const UInt32 DBT_DEVTYP_PORT = 0x00000003; [StructLayout(LayoutKind.Sequential)] struct DE…
如果说一个项目出现的最重大的事故,那无疑就是开发人员使用了不可控的元素. 前言 iOS开发当中有关于视音频播放的开发不在少数,用户时常会使用到一种输出设备,那就是"耳机",这一篇博客写的就是关于耳机的一些开发相关的技术点. 检测耳机是否插入 看到上面的标题的时候一定要注意,这里说的是"检测耳机是否插入",这里只是一次性的检测,不是实时监控耳机的拔插,但是有一些时候,下面的这个方法已经足够满足我们的开发需求了. 首先,我们需要导入AVFoundation.framew…
http://www.verydemo.com/demo_c134_i28481.html 开发过程中录音和播放这块碰到了一些问题,麻烦的主要有三个: 检测是否有声音输入设备 当有多个声音输出设备时,指定声音输出设备 检测耳机的插入和拔出 第一个问题,对于iTouch和iPad等本身不带麦克风的设备,需要检查是否插入了带录音功能的耳机:对于iphone,由于其本身已近自带麦克风,所以相对容易.第二个问题,当在本身带有外放的设备上插入耳机等输出设备时,就出现了多个输出设备,需要实现在程序中指定将声…
在Android里,用java通过实现BroadcastReceiver接口,就可以获得Intent消息.可是Delphi程序不能直接实现JBroadcastReceiver,如何能够实现类似Java的BroadcastReceiver功能呢? 幸运的是Delphi提供了TJFMXBroadcastReceiver类实现了BroadcastReceiver,我们便可以以此达到目的. 下面的程序片段举例,实现如何在Delphi下获取USB外设拔插的消息. uses System.SysUtils,…
首先,需要导入两个框架 然后,注册通知检测耳机的插入与拔出操作 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(outputDeviceChanged:)name:AVAudioSessionRouteChangeNotification object:[AVAudioSession sharedInstance]]; [[NSNotificationCenter defaultCenter]po…
原理                                                                                    其实android系统在耳机插入和拔出的时候都会发送广播,所以我们要想检测耳机的状态只需要注册响应的BroadCastReceiver,对状态进行响应的判断就ok了. 这个广播的名字叫做:android.intent.action.HEADSET_PLUG Code                               …
windows7下solr7.1.0默认jetty服务器环境搭建 1.下载solr solr7官网地址:http://lucene.apache.org/solr/ jdk8官网地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk-netbeans-jsp-142931.html 这个例子的环境是Windows7.开始Solr安装之前,确保你已经安装了JDK8和正确配置JAVA_HOME(solr7.1.0最低jdk版本是1…
前言 磨了许久,借助最近的一次通宵上线 cicada 终于更新了 v2.0.0 版本. 之所以大的版本号变为 2,确实是向下不兼容了:主要表现为: 修复了几个反馈的 bug. 灵活的路由方式. 可拔插的 IOC 容器选择. 其中重点是后面两个. 新的路由方式 先来看第一个:路由方式的更新. 在之前的版本想要写一个接口必须的实现一个 WorkAction:而且最麻烦的是一个实现类只能做一个接口. 因此也有朋友给我提过这个 issue. 于是改进后的使用方式如下: 是否有点似曾相识的感觉…