-
AlexanderMS © (12.07.08 13:43) [0]Вот функция загрузки файла с музыкой (mp3).function TMusicFile.LoadFile(FileName : WideString) : Boolean;
var
R : HResult;
Total : Int64;
begin
R := GraphBuilder.RenderFile(PWideChar(FileName), nil);
Result := FInitGood and (R = 0); // эта строка уже не выполняется
...
Если запускать программу в Delphi, то на строкеR := GraphBuilder.RenderFile...
программа вылетает (но при этом с остальными программами, включая Delphi IDE, всё нормально - можно снова запустить).
А если запускать EXE-файл программы "вручную", из Проводника, то программа работает нормально, без ошибок.
В чём может быть причина? -
Омлет (12.07.08 14:14) [1]Ошибка в GraphBuilder
-
AlexanderMS © (12.07.08 14:27) [2]
> Омлет (12.07.08 14:14) [1]
> Ошибка в GraphBuilder
Интересно. И что теперь? Чем она может быть вызвана? Как отлаживать программу? -
Омлет (12.07.08 16:04) [3]А я почем знаю? Может в RenderFile стоит проверка на незапуск из под отладчика?
Если есть исходники GraphBuilder, то искать строку, на которой падает. Если нет, то писать разработчикам.
ЗЫ: странно, как-то не вяжется название GraphBuilder и mp3 )) -
AlexanderMS © (12.07.08 18:57) [4]
> Если есть исходники GraphBuilder, то искать строку, на которой
> падает.
>
> ЗЫ: странно, как-то не вяжется название GraphBuilder и mp3 ))
Не знаю, IGraphBuilder - это интерфейс, входящий в DirectShow. И мне ли это говорить...
http://msdn.microsoft.com/en-us/library/ms785796(VS.85).aspx
Не знаю, вряд ли Microsoft даст мне исходники... :)
Вопрос ещё открыт... -
Омлет (12.07.08 19:05) [5]Хм. Дело ясное, что дело темное.
-
AlexanderMS © (13.07.08 18:55) [6]Неужели у меня одного так? :(
Пробовал перезапускать Delphi, всё равно: при отладке программа вылетает, при запуске из проводника - работает. А отлаживать тяжело... -
_AlexanderMS (15.07.08 21:20) [7]Проверил на другом компе - всё работает.
Есть подозрение, что просто не хватает выделяемой памяти.
Но тогда вопрос: как увеличить память, выделяемую для Delphi и приложений, которые запускаются из Delphi по нажатию F9? Или это звучит глупо?