Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > Не хватает dll?


Автор: ASSASIN985 27.1.2008, 04:53
Пытаюсь программировать Bluetooth под Windows.При компиляции возникает сообщение о том что файл IRPROPS.dll не найден.Видимо его не хватает ...рылся в интернете - не нашел.У кого есть - выложите пожалуйста 
Заодно просьба - посмотрите код , может быть ошибка в нем(но я оочень сомневаюсь )

Код
#include <winsock2.h>
#include <ws2bth.h>
#include <bthdef.h>

#include <BluetoothAPIs.h>

#include <stdio.h>
#include<iostream.h>
#pragma comment(lib,"irprops.lib")
 main(){
HBLUETOOTH_RADIO_FIND  A;
           HANDLE phRadio;
           BLUETOOTH_FIND_RADIO_PARAMS pbtfrp  ;

     A=BluetoothFindFirstRadio(&pbtfrp,&phRadio) ;
   if(A!=NULL)
     cout<<"Conect OK";

     else
    cout<<"1001110101010110"      ;


}

Автор: just_geek 27.1.2008, 13:56
Откуда ты взял эту библиотеку?

Цитата(MSDN)

Client
 Requires Windows Vista or Windows XP SP2.
 
Header
 Declared in BluetoothAPIs.h; include Bthsdpdef.h and BluetoothAPIs.h.
 
Library
 Use Bthprops.lib.
 
DLL
 Requires Bthprops.dll.

Автор: BorisVorontsov 27.1.2008, 15:54
Вот здесь похожий вопрос: http://www.experts-exchange.com/Networking/Wireless/Standards/Bluetooth/Q_21164709.html

Автор: chwind 8.7.2009, 15:44
в системе есть IRPROPS.CPL (в system32) если ее переименовать в длл до все работает, вот только криво это както, как сделать так чтобы приложение подгружало cpl?

Ларчик просто открывался: я пользовался борландовской либой в которой была прописана именно IRPROPS.DLL. Изменил в либе все IRPROPS.DLL на IRPROPS.CPL - заработало.

Автор: Romeo82 27.9.2009, 14:27
Добрый день.

Написал следующее:

Код

#include <stdio.h>
#include <bthdef.h>
#include <BluetoothAPIs.h>
#include <string>
#pragma comment(lib,"irprops.lib")
...
 HANDLE hRadio;
 BLUETOOTH_FIND_RADIO_PARAMS btfrp;
 HBLUETOOTH_RADIO_FIND hFind;
 BLUETOOTH_RADIO_INFO RadioInfo={0};
 btfrp.dwSize = sizeof(btfrp);
 hFind = BluetoothFindFirstRadio(&btfrp,&hRadio);
 if (hFind != 0)
 {
  printf("Local radio module is found\n");
 } else
 {
  printf("Nothing is found\n");
 }


Линкер выдаёт ошибку:
[Linker Error] 'C:\PROGRAM FILES\BORLAND\CBUILDER6\LIB\IRPROPS.LIB' contains invalid OMF record, type 0x21 (possibly COFF)

Понял, что за ошибка. Библиотека не для Builder. Достал irprops.cpl и перегнал её в правильный irprops.lib c помощью IMPLIB.EXE
Ошибка исчезла, а устройство BlueTooth не определяется. Хотя Windows устройство видит и передача данными происходит.
Уже весь моск себе сломал :(

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)