精华内容
下载资源
问答
  • C# 蓝牙驱动程序

    2019-03-04 22:35:36
    C# 蓝牙驱动程序 。
  • C# 蓝牙通信

    2015-04-10 17:43:39
    C# 蓝牙通信 获取电子设备发送的数据。上传下载
  • c#蓝牙通讯源码

    2018-11-08 08:36:46
    这是一个c#蓝牙通讯源代码,供大家参考学习。
  • C# 蓝牙 文件传输 DEMO

    2017-06-23 08:52:08
    C# 蓝牙 文件传输 完整 DEMO
  • xamarin android c# 蓝牙源码

    热门讨论 2013-11-18 11:18:11
    xamarin android c# 蓝牙源码 在vs2010上编通过 可以跟蓝牙模块通信,
  • C#蓝牙开发SDK内附有文档-可用于开发蓝牙通讯协议,内附有详细文档
  • C#蓝牙打印(windowsmobile) C#蓝牙打印(windowsmobile) C#蓝牙打印(windowsmobile) C#蓝牙打印(windowsmobile)C#蓝牙打印源代码可以直接运行 简单例子,仅供参考。一般
  • C# 蓝牙操作接受上传文件源码
  • c#蓝牙软件

    2019-01-16 13:20:00
    vs2010环境下,c#语言开发,蓝牙搜索与测试软件,实现数据收发.
  • C# 蓝牙通讯实例

    2018-11-22 11:33:32
    主要实现了PC蓝牙基本通信,具有一定的参考价值,包括蓝牙配对和文件收发,本文实例为大家分享了C#实现PC蓝牙通信代码。
  • 于2016年3月20日从32Feet官方站点下载的Windows C#蓝牙开发支持库—InTheHand.Net.Personal.dll,亲测可用,包含.Net 3.5 和 .NET 3.7两个版本,
  • C#连接低耗蓝牙源码例子,支持连接,发送,接收
  • C# 蓝牙SDK

    2014-03-21 16:43:56
    一个基于.Net平台的蓝牙开源SDK,供大家参考,方便大家用其开发基于蓝牙的windows应用!欢迎有兴趣的朋友下载!
  • C# 蓝牙控制器

    2015-04-07 22:31:23
    C#编写的蓝牙控制器 淘来的 感觉挺不错的,分享一下
  • c#蓝牙测试代码,主要代码部分,用来做手机与PC蓝牙通讯用的
  • C# 蓝牙编程

    2016-11-18 14:52:00
    下面的源码是基于destop的C#调用蓝牙的程序,也就是使用普通版本的.NET Framework来调用编程,一般是有蓝牙的笔记本电脑,或者使用外接蓝牙设备的电脑,如何使用外接蓝牙设备,请参考:外接USB蓝牙设置无法启动。...

    C#进行蓝牙编程

    本节我们给大家用源码的形式给大家介绍如何用C#调用蓝牙。下面的源码是基于destop的C#调用蓝牙的程序,也就是使用普通版本的.NET Framework来调用编程,一般是有蓝牙的笔记本电脑,或者使用外接蓝牙设备的电脑,如何使用外接蓝牙设备,请参考:外接USB蓝牙设置无法启动

    好了下面直接上代码:

    using System;
    sing System.Collections.Generic;
    sing System.Windows.Forms;
    sing InTheHand.Net;
    sing InTheHand.Net.Bluetooth;
    sing InTheHand.Net.Sockets;
     
    amespace BlueTooth
     
       public partial class Form1 : Form
       {
           public Form1()
           {
               InitializeComponent();
           }
     
           BluetoothClient Blueclient = new BluetoothClient();
           Dictionary<string, BluetoothAddress> deviceAddresses = new Dictionary<string, BluetoothAddress>();
     
           private void btnFind_Click(object sender, EventArgs e)
           {
               this.lblMessage.Text = "";
               this.lblMessage.Visible = true;
               BluetoothRadio BuleRadio = BluetoothRadio.PrimaryRadio;
               BuleRadio.Mode = RadioMode.Connectable;
               BluetoothDeviceInfo[] Devices = Blueclient.DiscoverDevices();
               lsbDevices.Items.Clear();
               deviceAddresses.Clear();
               foreach (BluetoothDeviceInfo device in Devices)
               {
                   lsbDevices.Items.Add(device.DeviceName);
                   deviceAddresses[device.DeviceName] = device.DeviceAddress;
               }
     
               this.lblMessage.Text = "搜索设备完成,搜索到" + lsbDevices.Items.Count + "个蓝牙设备。";
     
           }
     
           private void btnConnect_Click(object sender, EventArgs e)
           {
               try
               {
                   BluetoothAddress DeviceAddress = deviceAddresses[lsbDevices.SelectedItem.ToString()];
                   Blueclient.SetPin(DeviceAddress, txtPwd.Text.Trim());
                   Blueclient.Connect(DeviceAddress, BluetoothService.Handsfree); 
                   MessageBox.Show("配对成功。");
               }
               catch (Exception ex)
               {
                   MessageBox.Show(ex.Message);
               }
           }
       }

    上图是点击finddevices按钮后的结果。我们选择其中的一个设备,然后在Password的textbox中输入配对密码,点击Connect,如果成功会弹出对话框提示“配对成功”,如果失败会出现如下提示:

     

    Note:你只要想在Visual Studio中建立一个winform的默认程序,并把代码复制过去,然后引用InTheHand.Net.Personal.dll你的程序就可以直接运行了。不过我不建议你直接复制,最好是敲一边代码比较好。

    上面的示例代码中还需要特殊注意的就是下面这三个命名空间:

    using InTheHand.Net; 
    using InTheHand.Net.Bluetooth; 
    using InTheHand.Net.Sockets;

    他们是拿来的呢?在上面的程序中我引用了一个外部的DLL:InTheHand.Net.Personal.dll,上面那三个命名空间就是InTheHand.Net.Personal.dll中的。我使用的是桌面版的.NET Framework3.5,如果你想在移动设备,如手机或者手持机等移动设备而上使用,那么你只需要创建一个.NET Compact  Framework 3.5的程序,把上面的源码直接复制过去,并且引用InTheHand.Net.Personal.dll的移动版本就ok了。

    总结

    本文介绍了蓝牙技术以及用C#写了一个调用蓝牙的实例Demo,帮助大家理解,希望对大家有所帮助。我在这里留下一个悬念就是InTheHand.Net.Personal.dll是怎么来的,请参考:.NET蓝牙开源库:32feet.NET

    转载自:http://www.cnblogs.com/sczw-maqing/p/3329750.html

    转载于:https://www.cnblogs.com/zzu-liulei/p/6077739.html

    展开全文
  • C#蓝牙检索、通讯.rar

    2021-06-22 11:23:38
    通过第三方库InTheHand.Net.Personal.dll,检索附近可用蓝牙设备,实现通信,可直接运行
  • c# 蓝牙打印

    千次阅读 2019-03-07 16:06:48
    //蓝牙一般默认为com6 /// /// 获取或设置端口名称 /// public string PortName { get { _portName = server.PortName; return _portName; } set { _portName = value; server.PortName = _portName...

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.IO;
    using System.IO.Ports;

    namespace BluetoothTest
    {
    public class Printer
    {
    SerialPort server = new SerialPort();
    private string _portName = “COM6”;//蓝牙一般默认为com6
    ///
    /// 获取或设置端口名称
    ///
    public string PortName
    {
    get
    {
    _portName = server.PortName;
    return _portName;
    }
    set
    {
    _portName = value;
    server.PortName = _portName;
    }
    }
    ///
    /// 端口是否已经打开
    ///
    public bool IsOpen
    {
    get
    {
    return server.IsOpen;
    }
    }
    ///
    /// 构造方法初始化串口参数
    ///
    public Printer()
    {//初始化各个参数
    server.BaudRate = 9600;//波特率
    server.Parity = 0;//校检位
    server.DataBits = 8;//数据位
    server.StopBits = StopBits.One;//停止位
    server.PortName = _portName;//端口名称
    server.WriteTimeout = -1;//超时时间
    server.ReadTimeout = -1;//超时时间
    }
    ///
    /// 打开端口
    ///
    ///
    public bool OpenPort()
    {
    try
    {
    if (!server.IsOpen)
    {//关闭的
    server.Open();
    }
    else
    {//打开的
    //server.Close();
    //server.Open();
    }
    return true;
    }
    catch(Exception ex)
    { return false; }
    }
    ///
    /// 发送数据
    ///
    ///
    ///
    public bool SendDataToPort(string str,out string mes)
    {
    try
    {
    byte[] OutBuffer;//数据
    int BufferSize;
    Encoding targetEncoding;
    //将[UNICODE编码]转换为[GB码],仅使用于简体中文版mobile
    targetEncoding = Encoding.GetEncoding(0); //得到简体中文字码页的编码方式,因为是简体中文操作系统,参数用0就可以,用936也行。
    BufferSize = targetEncoding.GetByteCount(str); //计算对指定字符数组中的所有字符进行编码所产生的字节数
    OutBuffer = new byte[BufferSize];
    OutBuffer = targetEncoding.GetBytes(str); //将指定字符数组中的所有字符编码为一个字节序列,完成后outbufer里面即为简体中文编码
    byte[] cmdData = new byte[BufferSize+100];
    //初始化打印机
    cmdData[0] = 0x1B;
    cmdData[1] = 0x40;
    //设置字符顺时旋转180度
    cmdData[2] = 0x1B;
    cmdData[3] = 0x56;
    cmdData[4] = 0;
    for (int i = 0; i < BufferSize; i++)
    {
    cmdData[5 + i] = OutBuffer[i];
    }
    //向打印机发送[GB码]数据
    server.Write(cmdData, 0, BufferSize + 5);
    //server.WriteLine(str);
    //初始化指令1B 40
    cmdData[0] = 0x1B;
    cmdData[1] = 0x40;
    //打印并走纸指令
    cmdData[2] = 0x1B;
    cmdData[3] = 0x64;
    cmdData[4] = 0x02;
    server.Write(cmdData, 0, 5);
    mes = “”;
    return true;
    }
    catch(Exception ex)
    {
    mes = ex.Message;
    return false;
    }
    }
    ///
    /// 十六进制转换字节数组
    ///
    ///
    ///
    private byte[] HexStringToByteArray(string s)
    {
    s = s.Replace(" ", “”);
    byte[] buffer = new byte[s.Length / 2];
    for (int i = 0; i < s.Length; i += 2)
    buffer[i / 2] = (byte)Convert.ToByte(s.Substring(i, 2), 16);
    return buffer;
    }
    ///
    /// 字节数组转换十六进制
    ///
    ///
    ///
    private string ByteArrayToHexString(byte[] data)
    {
    StringBuilder sb = new StringBuilder(data.Length * 3);
    foreach (byte b in data)
    sb.Append(Convert.ToString(b, 16).PadLeft(2, ‘0’).PadRight(3, ’ '));
    return sb.ToString().ToUpper();
    }
    public void ClosePort()
    {
    server.Close();
    }
    }
    }
    3.接下在项目窗体上的使用,看看下面的代码:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    namespace BluetoothTest
    {
    public partial class frmMain : Form
    {
    public frmMain()
    {
    InitializeComponent();
    }
    Printer printer = new Printer();
    private void menuItem4_Click(object sender, EventArgs e)
    {
    //退出
    printer.ClosePort();
    Application.Exit();
    }
    private void menuItem2_Click(object sender, EventArgs e)
    {
    //打印
    if (tbxBody.Text.Length == 0)
    return;
    setEnabled(false);
    if (!printer.IsOpen)//只有在端口关闭的时候才能设置
    printer.PortName = drpPort.GetItemText(drpPort.SelectedItem);
    if (!printer.OpenPort())
    {
    MessageBox.Show(“无法打开端口” + drpPort.GetItemText(drpPort.SelectedItem));
    }
    string mes = “”;
    if (!printer.SendDataToPort(tbxBody.Text,out mes))
    {
    MessageBox.Show(“发送数据失败” + drpPort.GetItemText(drpPort.SelectedItem) + " " + mes);
    }
    setEnabled(true);
    }
    private void setEnabled(bool b)
    {
    menuItem1.Enabled = b;
    menuItem3.Enabled = b;
    }
    private void frmMain_Load(object sender, EventArgs e)
    {
    //初始化
    drpPort.SelectedIndex = 1;
    }
    }
    }

    展开全文
  • C# 蓝牙核心源码

    千次阅读 2017-03-02 10:31:58
    //蓝牙适配器 string sendFileName = null;//发送文件名 BluetoothAddress sendAddress = null;//发送目的地址 ObexListener listener = null;//监听器 string recDir = null;//接受文件存放目录 Thread l

    BluetoothRadio radio = null;//蓝牙适配器
    string sendFileName = null;//发送文件名
    BluetoothAddress sendAddress = null;//发送目的地址
    ObexListener listener = null;//监听器
    string recDir = null;//接受文件存放目录
    Thread listenThread, sendThread;//发送/接收线程

    radio = BluetoothRadio.PrimaryRadio;//获取当前PC的蓝牙适配器

    //关于蓝牙设备选择对话框
    SelectBluetoothDeviceDialog dialog = new SelectBluetoothDeviceDialog();
    dialog.ShowRemembered = true;//显示已经记住的蓝牙设备
    dialog.ShowAuthenticated = true;//显示认证过的蓝牙设备
    dialog.ShowUnknown = true;//显示位置蓝牙设备
    sendAddress = dialog.SelectedDevice.DeviceAddress;//获取选择的远程蓝牙地址

    //发送文件操作
    ObexWebRequest request = new ObexWebRequest(sendAddress, Path.GetFileName(sendFileName));//创建网络请求
    WebResponse response = null;
    request.ReadFile(sendFileName);//发送文件
    response = request.GetResponse();//获取回应
    response.Close();

    //接收文件
    radio.Mode = RadioMode.Discoverable;//设置本地蓝牙可被检测
    listener = new ObexListener(ObexTransport.Bluetooth);//创建监听
    listener.Start();
    listener.Stop();

    ObexListenerContext context = null;
    ObexListenerRequest request = null;
    context = listener.GetContext();//获取监听上下文
    request = context.Request;//获取请求
    string uriString = Uri.UnescapeDataString(request.RawUrl);//将uri转换成字符串
    string recFileName = recDir + uriString;
    request.WriteFile(recFileName);//接收文件
    labelRecInfo.Text = “收到文件” + uriString.TrimStart(new char[] { ‘/’ }

    展开全文
  • c#蓝牙连接

    千次阅读 2013-11-04 00:33:12
    蓝牙收索 1. 首先创建一个蓝牙对象 BluetoothClient Blueclient =new BluetoothClient(); 2.用一个键值对保存收索到的蓝牙地址 Dictionary&lt;string,BluetoothAddress&gt; deviceAddresses=new ...

    一.蓝牙收索
     1. 首先创建一个蓝牙对象
       BluetoothClient Blueclient =new BluetoothClient();
     2.用一个键值对保存收索到的蓝牙地址
       Dictionary<string,BluetoothAddress> deviceAddresses=new Dictionary<string,BluetoothAddress>();
     3.设置蓝牙无线电状态
       BluetoothRadio BlueRadio=BluetoothRadio.PrimaryRadio;
       BlueRadio.Mode=RadioMode.Connectable   //可连接的
     4.监听服务,即监听附近的蓝牙设备并保存
       BluetoothDeviceInfo[] Devices=Blueclient.DiscoverDevices();
     5.将监听到的服务添加到deviceAddresses保存。并与蓝牙的名字相对应。
       divceAddresses[device.DeviceName]=device.DeviceAddress;
    二.连接蓝牙
     1.设置匹配码,从txtPwd获取,并去掉前后空白字符Trim()
       Blueclient.SetPin(DeviceAddress, txtPwd.Text.Trim())
     2.连接蓝牙,对不同的设备有不同的服务类型,要匹配
       Blueclient.Connect(DeviceAddress,BluetoothSevice.SerialPort);
    三.发送信号
     1.获取蓝牙数据流
       System.IO.Stream stream=Blueclient.GetStream();
      有string型信号message
     2.将string型信号message转换成字节数组,再发送
       byte[] by=System.Text.Encoding.ASCII.GetBytes(message);
       stream.Write(by,0,by.Length);

    展开全文
  • 支持win10 86位,亲测可用;从csdn上下载了一个没注明版本了弄了好长时间,最后发现是DLL版本问题,希望后面的人不要继续浪费时间了。
  • 我是新手,C#才起步,就先拿着其他大神的程序练练手,跪请大神帮忙看一下是怎么回事。![图片说明](https://img-ask.csdn.net/upload/201512/03/1449150381_849079.png) 代码是:using InTheHand.Net; using ...
  • 该中间件实现了配对,连接...语言:C# 2、系统流程图 3、程序说明: 工程名 说明 核心 BluetoothTest 蓝牙设备演示程序 Sinops.Bluetoot.
  • 亲测可用,检测蓝牙,传输文件里面是安装包,需要setup后使用 说明: 1.这两个文件夹中的内容均于2016.3.20下载自官方网站,安全可靠 2.这个两个文件夹分别为3.5版本 3.其中32feet.NET 3.5为安装文件,安装后可以在...
  • 详细介绍了 在.netcf如何与蓝牙设备互相通讯
  • win7下,c#蓝牙开发报错

    2016-03-05 07:47:10
    ![图片说明](https://img-ask.csdn.net/upload/201603/05/1457163897_624424.png) 这是出错代码,请大神看看。 下面是源代码: ![图片说明](https://img-ask.csdn.net/upload/201603/05/1457164011_994537.png)

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,700
精华内容 1,080
关键字:

c#蓝牙

c# 订阅