SiD1989 Ответов: 0

Получение IP-адреса драйвера принтера по умолчанию в UWP


У нас есть требование, чтобы получить IP-адрес принтера, настроенный в драйвере принтера по умолчанию в Панели управления в нашем приложении UWP.

Мне удалось восстановить "System.DeviceInterface.PrinterPortName" , извлекая GUID класса интерфейса и передавая это вышеописанное свойство для извлечения.

Но я не мог получить "System.Devices.Адрес" аналогично. Код, вставленный ниже Для имени порта.

Мне очень нужен IP-адрес, так как имя порта выбирается пользователем и может быть изменено на любое имя, удаляющее IP-адрес.

Пожалуйста, помогите поделиться рабочим кодом для получения IP-адреса с помощью вышеуказанного свойства или любым другим способом в приложении UWP.

Ниже приведен рабочий код для имени порта, пожалуйста, помогите получить IP-адрес того же порта аналогичным образом.

Что я уже пробовал:

строка aqsFilter = "System.Devices.InterfaceClassGuid:=\"{0ecef634-6ef0-472a-8085-5ad023ecbccd}\"";

string[] propertiesToRetrieve = new string[] { "System.DeviceInterface.PrinterPortName"};

DeviceInformationCollection deviceInfoCollection = ожидание DeviceInformation.Методы findallasync(aqsFilter, propertiesToRetrieve);

по каждому элементу (белый на deviceInfoCollection)
{
если (белый.IsDefault == true)
{
string strPortName = (string)deviceInfo.Properties["System.DeviceInterface.PrinterPortName"];

если (!строка.IsNullOrEmpty(strPortName))
{
strPortName = await ParsePortName(strPortName);
если (!строка.IsNullOrEmpty(strPortName))
{
_strIPAddress = strPortName;
}
}
перерыв;
}
}

SiD1989

Любой, кто имеет опыт работы в этой области ... пожалуйста, предоставьте мне решение или любые предложения. Это очень важно для меня.

0 Ответов