Witam. Ten temat parokrotnie pojawiał się już na tym forum, jednak żaden nie rozwiązywał mojego problemu. Chodzi mianowicie o wykorzystanie biblioteki bass w C++ Builder 6. Testowałem tę bibliotekę na Dev C++ i działa bez zarzutu. Natomiast na BCB6 za chiny nie chce działać. Chodzi mi o wykorzystanie poniższego kodu np. w zdarzeniu jakiegoś przycisku OnClick, żeby program odtworzył mi dźwięk:
HSTREAM strumien;
//inicjacja BASS'a
if (!BASS_Init(-1, 44100, 0, 0, 0))
BASS_Init(0, 44100, 0, 0, 0);
}
strumien = BASS_StreamCreateFile(false, "C:\\dzwiek.wav", 0, 0, 0);
BASS_ChannelPlay(strumien, true);
do
{
}while(BASS_ChannelIsActive(strumien));
BASS_Stop();
BASS_Free();
system("PAUSE");
Oczywiście zawarłem trzy pliki w katalogu, w którym znajduje się exe, mianowicie: bass.h, bass.dll, bass.lib. Dodałem plik nagłówkowy bass.h. Dodałem do projektu pliczek bass.lib. Kompiluję, wyskakuje mi błąd:
invalid OMF record, type 0x21 (possibly COFF)
No to użyłem programiku implib i przekonwertowałem w sposób następujący: implib.exe bass.lib bassbcb.lib
Dołączyłem do programu bassbcb.lib. Program uruchamia się, ale wyskakuje komunikat:
"Nie znaleziono punktu wejścia procedury _BASS_ChannelIsActive w bibliotece BASS.DLL"
Konwertowałem również w sposób jak jest w dokumentacji BASS: implib.exe bass.lib bass.dll , czego do końca nie rozumiem, ale wówczas wyskakuje mi taki komunikat:
"Aplikacja lub biblioteka DLL C:...\BASS.DLL nie jest poprawnym obrazem systemu Windows NT. Sprawdź to z dystkietką instalacyjną."
Czy jest w ogóle możliwe użycie BASS w BCB6, bo męczyłem się z tym dzisiaj cały dzień, starałem się podążać za przykładami w internecie, na tym forum (konwertowanie pliku COFF na OMF, oczywiście stosowałem również coff2omf.exe - bez skutku). Widocznie jest to możliwe, skoro jest napisane w dokumentacji BASS:
"To use BASS with Borland C++ Builder, you'll first have to create a
Borland C++ Builder import library for it. This is done by using the
IMPLIB tool that comes with Borland C++ Builder. Simply execute this:
IMPLIB BASSBCB.LIB BASS.DLL
... and then use BASSBCB.LIB in your projects to import BASS."
Tyle, że również tego pliku BASSBCB.LIB też nie mogłem znaleźć....
Naprawdę już nie wiem o co kaman. Może Wy mi pomożecie?
Z góry dzięki.