Articles of c + +

堆栈独立的C / C + +蓝牙API?

我想知道是否有Windows(XP,Vista,7,x86和x64)任何堆栈独立的C / C + +蓝牙API。 我的目标是创build一个连接,并通过蓝牙发送/接收一些时间关键的数据。 我的研究给了我以下的select,这个任务的缺点: 用于蓝牙的Windows套接字 只适用于微软蓝牙堆栈 使用COM端口(CreateFile / ReadFile / …) 比套接字选项慢,用户必须先连接到设备。 使用堆栈依赖的API 这将需要检测使用的堆栈并为每个堆栈创build读/写function。 非常耗时,我不知道是否可以支持所有的堆栈 写一个KMDF驱动程序 我想写一个函数驱动程序直接与应该独立堆栈的蓝牙HCI驱动程序进行通信。 这将是非常耗时的,因为我将不得不阅读整个蓝牙规范,或者有一个HCI命令的API? 我知道也有一个商业sdk从btframework.com支持大多数(或所有)蓝牙堆栈,但我需要一个免费的选项。 请告诉我,这个任务是否还有其他的select。 如果没有,你能告诉我哪些select你更喜欢,为什么? 可以使用Windows套接字并忽略其他蓝牙堆栈吗? 谢谢你的帮助 :)

我可以更改用户的键盘input吗?

我发现这个键盘钩子代码,我试图稍微修改我的目的: http : //blogs.msdn.com/toub/archive/2006/05/03/589423.aspx 作为一个概述,我想让用户按下一个按键,说'E',并让键盘返回一个不同的字符'Z',以适应任何应用程序的焦点。 我现在改变的相关方法如下所示: private static IntPtr HookCallback(int nCode, IntPtr wParam, IntPtr lParam) { if (nCode >= 0 && wParam == (IntPtr)WM_KEYDOWN) { //The truely typed character: int vkCode = Marshal.ReadInt32(lParam); Console.WriteLine((Keys)vkCode); KBDLLHOOKSTRUCT replacementKey = (KBDLLHOOKSTRUCT)Marshal.PtrToStructure(lParam, typeof(KBDLLHOOKSTRUCT)); replacementKey.vkCode = 90; // char 'Z' Marshal.StructureToPtr(replacementKey, lParam, false); //Now changed to my set character vkCode […]

具有枚举值的C#Propertygridcombobox(Win窗体)

public enum eVisualType { None = 0, Torch = 1, Rune01, Rune02, Rune03, FireRed01, LaserBlackWhiteLeft, LaserBlackWhiteRight, LaserBlueRedLeft, LaserBlueRedRight, Wheel01, Wheel01a, Wheel02, BlinkingStar, MovingPillar } public class EnumTypeConverter : TypeConverter { public override bool GetStandardValuesSupported(ITypeDescriptorContext context) { return true; // True means show a combobox } public override bool GetStandardValuesExclusive(ITypeDescriptorContext context) { return true; // True […]

OpenCV 3.0.0“configuration”失败,ffmpeg没有下载

尝试在Windows上使用CMAKEconfigurationOpenCV时出现以下错误: CMake Warning at cmake/OpenCVUtils.cmake:865 (message): Download: Local copy of opencv_ffmpeg.dll has invalid MD5 hash: d41d8cd98f00b204e9800998ecf8427e (expected: 89c783eee1c47bfc733f08334ec2e31c) Call Stack (most recent call first): 3rdparty/ffmpeg/ffmpeg.cmake:10 (ocv_download) cmake/OpenCVFindLibsVideo.cmake:193 (include) CMakeLists.txt:527 (include) Downloading opencv_ffmpeg.dll… CMake Error at cmake/OpenCVUtils.cmake:888 (file): file DOWNLOAD MD5 mismatch for file: [C:/research/opencv300/sources/3rdparty/ffmpeg/downloads/89c783eee1c47bfc733f08334ec2e31c/opencv_ffmpeg.dll] expected MD5 sum: [89c783eee1c47bfc733f08334ec2e31c] actual MD5 sum: [d41d8cd98f00b204e9800998ecf8427e] Call Stack (most […]

如何在尝试Process.Start()之前以编程方式检查文件是否存在文件关联?

我的.Net Windows窗体应用程序生成一个PDF报告,我想要显示给用户。 而不是假设客户端电脑安装了PDF查看器,并盲目地将PDF在操作系统上打开, 是否有办法检查客户端上的文件关联列表 ,然后显示“ 您需要一个PDF查看器应用程序安装 – 这里有几个build议.. “对话框,如果PDF不是注册types? 我发现了许多关于更改或注册文件关联的问题和答案,但我只是想简单地查询列表,而不是更改它。 我想要一个适用于Windows XP以上的解决scheme(WinXP,Vista,Win7)。 谢谢你的帮助