我想通过蓝牙打印机从Windows移动应用程序打印。我正在做的是硬编码COM端口如下...
SerialPort comPort1 = new SerialPort("COM5", 57600, Parity.None, 8, StopBits.One);
comPort1.Open();
//Some thing to pint
//comPort1.WriteLine("PRINT");
System.Threading.Thread.Sleep(500);
comPort1.Close();
它不正确的方式,我想搜索应用程序可用的蓝牙打印机并与它连接。另外显示一个正确的错误消息[“找不到蓝牙设备/所选设备不是打印机”]。请帮我找到这个,任何人都可以指导我这样做?
您必须编写一些可以遍历设备上每个端口号的代码,测试所有各种设置以查看端口是否存在。即使这样,我也不知道保证端口是蓝牙打印机的好方法。
您是否注意到Microsoft显示用户指定设置的表单?
只是说,您可能会发现使用自定义对话框向您的人员展示更容易。
使用蓝牙API可能更符合您的要求。
比如我的库32feet.NET。很多人用它来打印。你可以发现这样的设备:
var cli = new BluetoothClient();
BluetoothDeviceInfo[] devList = cli.DiscoverDevices();
BluetoothDeviceInfo[] selected = null;
foreach (var cur in devList) {
... chose one and set 'selected'
}
return selected;
您可以连接到以下打印机:
BluetoothAddress addr = ... e.g. selected.DeviceAddress;
var cli = new BluetoothClient();
cli.Connect(addr, BluetoothService.SerialPort);
using(var peer = cli.GetStream())
using(var wtr = new StreamWriter(peer)) {
wtr.WriteLine("Hello world");
}