Форум: "Media";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2003.05.08;
Скачать: [xml.tar.bz2];




Вниз

Помогите с ACM (Audio Compression Manager). 


Blacked   (2003-01-30 02:05) [0]

Я пытаюсь получить информацию об Драйверах и постоянно возникает ошибка:
Access violation at address 00000010. Read of adress 00000010.
Испробывал уже всё что можно. Делал отладку, немогу найти проблему.
Использую MSACM.pas от JEDI http://www.delphi-jedi.org/.
Может кто сталкивался...

часть исходника:

//==============================================================================
function FormatEnumProc(hACMDrvId: HACMDRIVERID; ACMFmtDet: TACMFormatDetails;
dwInstance: DWord; fdwSupport: DWord): LONGBOOL; stdcall;
begin
...
...
Result:=True; // Продолжить поиск всёх форматов
ShowMessage("Сейчас вылитит птичка ERROR!!!");
end;

//==============================================================================
function DriverEnumProc(hACMDrvId: HACMDRIVERID;
dwInstance: DWORD; fdwSupport :DWORD): BOOL; stdcall;
var
ACMDrvDet: TACMDriverDetails;
ACMFmtDet: TACMFormatDetails;
WaveFormatEx: TWaveFormatEx;
MaxSize : Word;
hACMDrv : HACMDriver;
begin
if fdwSupport=ACMDRIVERDETAILS_SUPPORTF_CODEC then
begin
ACMDrvDet.cbStruct:=SizeOf(ACMDrvDet);
if acmDriverDetails(hACMDrvId, ACMDrvDet, 0) = 0 then
if HiWord(ACMDrvDet.vdwACM)<=HiWord(acmGetVersion) then
if ACMDrvDet.fdwSupport and ACMDRIVERDETAILS_SUPPORTF_CODEC > 0 then
begin
// Заполним бокс драйвера
SelectFormatForm1.DriverBx1.Items.Add(ACMDrvDet.szShortName);
// Инициализируем структуры
FillChar(WaveFormatEx,SizeOf(WaveFormatEx),#0);
FillChar(ACMFmtDet,SizeOf(TACMFormatDetails),#0);
hACMDrv:=nil;
if acmDriverOpen(hACMDrv,hACMDrvId,0) <> 0 then Result:=False;
// Получим максимальный размер формата
MaxSize:=0;
if acmMetrics(HACMOBJ(hACMDrv),ACM_METRIC_MAX_SIZE_FORMAT,MaxSize) <> 0 then Result:=False;
if MaxSize<SizeOf(WaveFormatEx) then MaxSize:=SizeOf(WaveFormatEx);
WaveFormatEx.cbSize:=LoWord(MaxSize)-SizeOf(WaveFormatEx);
WaveFormatEx.wFormatTag:=0;
// Устанавливаем формат для получения параметров
ACMFmtDet.cbStruct:=SizeOf(ACMFmtDet);
ACMFmtDet.pwfx:=@WaveFormatEx;
ACMFmtDet.cbwfx:=MaxSize;
ACMFmtDet.dwFormatTag:=0;
// Пытаемся получить всё форматы
if acmFormatEnum(hACMDrv,ACMFmtDet,@FormatEnumProc,Integer(SelectFormatForm1),0) <> 0 then Result:=False;
acmDriverClose(hACMDrv,0);
end;
end;
Result:=True; // Продолжить поиск всёх драйверов
end;

//==============================================================================
procedure TSelectFormatForm1.InitSelFormat;
begin
// ТУТ НАЧАЛО ВСЕГО
acmDriverEnum(@DriverEnumProc,Integer(Self),ACM_DRIVERENUMF_DISABLED);
end;
//==============================================================================



Владимир Васильев   (2003-01-30 10:20) [1]

Проверяй почту.



savva   (2003-01-30 12:19) [2]

> Владимир Васильев © (30.01.03 10:20)
> Проверяй почту.

ну так не интересно.. может в кладовку?:)))



Владимир Васильев   (2003-01-30 14:38) [3]

Это не мои компоненты и в данный момент их новая версия распространяется автором как Shareware , - но опубликованы они в своё время были под Mozilla Public License - так что проверяй почту :).



savva   (2003-01-30 14:47) [4]

>Владимир Васильев © (30.01.03 14:38)
>так что проверяй почту :).
спасибо:)))




Blacked   (2003-01-30 17:22) [5]

Нет народ, так не пойдёт. Мне не нужны компоненты, мне надо имено на API. Может кто уже писал подобную прогу и скинит часть исходника.




Форум: "Media";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2003.05.08;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.028 c
14-23371          vopros                2003-04-21 14:43  2003.05.08  
У меня такое впечатление что здесь одни бездельники сидят


1-23120           scorpi                2003-04-27 18:58  2003.05.08  
Цвета строк в Memo и RichEdit


14-23363          Безумец               2003-04-21 02:53  2003.05.08  
КАК ПОЭТАПНО СОЗДАТЬ БД


1-23053           LyzD                  2003-04-23 23:32  2003.05.08  
Как прочитать файл в кодировке Unicode


3-22988           zom                   2003-04-14 12:54  2003.05.08  
Поиск по индексу или Select, что быстрее через ADO?