Показать сообщение отдельно

  #3580  
Старый 16.05.2009, 10:40
slesh
Познавший АНТИЧАТ
Регистрация: 05.03.2007
Сообщений: 1,985
С нами: 10097606

Репутация: 3349


По умолчанию

2 iGlass юзать поисковики. там сотни ответов
Код:
// В файл MyWave.rc пишешь:
// MyWave RCDATA LOADONCALL MyWave.wav
// Затем компилируешь
// brcc32.exe MyWave.rc, получаешь MyWave.res.
// В DLL пишешь:
// {$R MyWave.res}
// или используешь программу для работы с ресурсами
// ( н-р Borland Resource WorkShop) для получения res файла

// В проге делаеш так
procedure RetrieveMyWave;
var
  hResource: THandle;
  lib:thandle;
  pData: Pointer;
begin
 lib:=LoadLibrary('Имя твоей DLL');
  hResource:=LoadResource( lib, FindResource(lib, 'MyWave', RT_RCDATA));
  try
    pData := LockResource(hResource);
    if pData = nil then
      raise Exception.Create('Cannot read MyWave');

    // Здесь pData указывает на MyWave
    // Теперь можно, например, проиграть его (Win32):
    PlaySound('MyWave', 0, SND_MEMORY);

  finally
    FreeResource(hResource);
  end;
end;
 
Ответить с цитированием