Показать сообщение отдельно
  #12  
Старый 06.12.2012, 07:30
Аватар для alexpac26
alexpac26 alexpac26 вне форума
Прохожий
 
Регистрация: 23.08.2011
Сообщения: 20
Репутация: 10
По умолчанию

Цитата:
Не удалось создать поток BASS_ERROR_HANDLE (5)

1) тексты сообщений валяются в массиве

Код:
b_mess_error : array[0..1,0..3] of string =
  ( ('Unknown file type'#13#10,  // eng 0
      'File is not exists'#13#10,
     'Stream is not created'#13#10,
     'Play the Stream Error'#13#10 ),
     ('Неизвестный формат файла'#13#10,  // rus 1
      'Файл не найден'#13#10,
     'Не удалось создать поток'#13#10,
     'Не удалось запустить воспроизведение'#13#10 )
  );

2) по коду ошибки в фукнции

Код:
procedure TBassSimple.Load;

// ...

// запуск завершен
if (stream = 0) then begin
   winmessage(Handle,b_mess_error[b_mess_lang,2]+BassErrorString,'Error BASS_StreamCreateFile');
   busy:=false; exit;
end;

вот тут допишите свой обработчик типа

Код:
if bassRadio and (BASS_ErrorGetCode = 5) then 
winmessage(Handle,'Не найдена радио станция','Ошибка');

насчет исключений да, не думал что может быть так, подумаю ...

насчет кодов ошибок тоже.



могу еще предложить в BassSimple ввести событие ошибки OnBassError : TBassErrorEvent = procedure (Sender: TObject; Text: string; Code: integer) of object;

и если оно не назначено то будут выдаваться messagebox как раньше, а если назначено то вызываеться событие и там сам как хочешь обрабатывай

и где такие радио станции нарыл что 90% не работают?
Ответить с цитированием