Я пытаюсь сделать функцию для подключения к определенному устройству Bluetooth. Я несколько уверен, что параметр DeviceInformation действителен, поэтому проблема должна быть просто включена в функцию ниже. Через короткий промежуток времени после строки RfcommDeviceService.FromIdAsync(...)
я увижу A first chance exception of type 'System.IO.FileNotFoundException' occurred in mscorlib.ni.dll
в выводе в Visual Studio, а затем просмотрите The program '...' has exited with code -1 (0xffffffff).
. Кроме того, исключение не улавливается try{} catch(Exception e){}
, так что это может означать, что проблема возникает в другом месте.'System.IO.FileNotFoundException' после вызова RfcommDeviceService.FromIdAsync (...)
public async Task<bool> Connect(DeviceInformation deviceInformation)
{
try
{
await Windows.ApplicationModel.Core.CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, async() =>
{
rfcommService = await RfcommDeviceService.FromIdAsync(deviceInformation.Id);
});
System.Diagnostics.Debug.WriteLine("edfdshjkfdsklfdjslkf");
if (rfcommService == null)
{
return false;
}
System.Diagnostics.Debug.WriteLine(rfcommService.Device.ToString());
await streamSocket.ConnectAsync(
rfcommService.ConnectionHostName,
rfcommService.ConnectionServiceName);
dataReader = new DataReader(streamSocket.InputStream);
dataWriter = new DataWriter(streamSocket.OutputStream);
return true;
}
catch (Exception e)
{
Debug.WriteLine("Exception while connecting: " + e.Message);
Debug.WriteLine(e.StackTrace);
return false;
}
}
У меня также есть следующие Capabilities
в Package.appxmanifest
:
<Capabilities>
<Capability Name="internetClientServer" />
<DeviceCapability Name="proximity" />
<m2:DeviceCapability Name="bluetooth.rfcomm">
<m2:Device Id="any">
<m2:Function Type="name:serialPort" />
</m2:Device>
</m2:DeviceCapability>
</Capabilities>
Разное .dll аналогичная проблема http://stackoverflow.com/questions/9729691/an-unhandled-exception-of-type-system-io-filenotfoundexception-occurred-in-unk Также посмотрите на этот https: //social.msdn.microsoft.com/Forums/en-US/86e5fb0b-bc89-42d7-85d4-bd755385044e/a-first-chance-exception-of-type-systemiofilenotfoundexception-occurred-in-mscorlibdll?forum=microsoftdeviceemu –
@ user3956566 После решения этой проблемы, я думаю, проблема заключалась в том, что метод, который я использовал, был эксклюзивным для рабочего стола/планшета WinRT и не работает для телефонов. Наиболее вероятной причиной этого будет, как вы сказали, отсутствие DLL. – njallam
Спасибо за отзыв. –