Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.11.2009, 20:00   #1
PIKACHU
Пользователь
 
Аватар для PIKACHU
 
Регистрация: 20.10.2009
Сообщений: 23
Вопрос Проблема освобождения файла в DSPAck

В общем суть в следующем, при запуске, а именно
Код:
FilterGraph.RenderFile(Name);
Все происходит гуд, а когда делаю
Код:
  FilterGraph.Stop;
  FilterGraph.ClearGraph;
  FilterGraph.DisconnectFilters;
вроде все на первый взгляд замечательно, а нет, файл чем то занят(занет именно моей программой, так как при закрытии файл освобождается).
Теперь вопрос, как освободить файл?
PIKACHU вне форума Ответить с цитированием
Старый 26.11.2009, 20:07   #2
dani92
Форумчанин
 
Аватар для dani92
 
Регистрация: 17.02.2009
Сообщений: 132
По умолчанию

попробуй FilterGraph.active:=false;
Чат по локальной сети http://fmchat.ucoz.kz - протестируйте плиз)))
а так delphi эта лучшая система программирования
dani92 вне форума Ответить с цитированием
Старый 26.11.2009, 20:09   #3
PIKACHU
Пользователь
 
Аватар для PIKACHU
 
Регистрация: 20.10.2009
Сообщений: 23
По умолчанию

Это тоже стоит, не дописал.
PIKACHU вне форума Ответить с цитированием
Старый 26.11.2009, 20:16   #4
dani92
Форумчанин
 
Аватар для dani92
 
Регистрация: 17.02.2009
Сообщений: 132
По умолчанию

щас у себя в проекте посмотрю, если че пример выложу

я так понимаю, что ты пытаешься удалить файл, но винда говорит что файл занят, так??
Чат по локальной сети http://fmchat.ucoz.kz - протестируйте плиз)))
а так delphi эта лучшая система программирования

Последний раз редактировалось mihali4; 26.11.2009 в 22:11.
dani92 вне форума Ответить с цитированием
Старый 26.11.2009, 20:35   #5
PIKACHU
Пользователь
 
Аватар для PIKACHU
 
Регистрация: 20.10.2009
Сообщений: 23
По умолчанию

Я пытаюсь, изменить ID3 тэг и иногда мне надо саму аудио дорожку изменить, ни там, ни там не дает
PIKACHU вне форума Ответить с цитированием
Старый 26.11.2009, 20:45   #6
dani92
Форумчанин
 
Аватар для dani92
 
Регистрация: 17.02.2009
Сообщений: 132
По умолчанию

изменяешь при воспроизведении??
Чат по локальной сети http://fmchat.ucoz.kz - протестируйте плиз)))
а так delphi эта лучшая система программирования
dani92 вне форума Ответить с цитированием
Старый 26.11.2009, 20:56   #7
PIKACHU
Пользователь
 
Аватар для PIKACHU
 
Регистрация: 20.10.2009
Сообщений: 23
По умолчанию

Нет, вначале останавливаю
Код:
  FilterGraph.Stop;
  FilterGraph.ClearGraph;
  FilterGraph.DisconnectFilters;
  FilterGraph.active:=false;
Делаю изменения и пытаюсь запустить но при изменении выдает ошибку что файл занят.

ПС До запуска файла все изменения происходят без ошибки.
PIKACHU вне форума Ответить с цитированием
Старый 26.11.2009, 21:18   #8
dani92
Форумчанин
 
Аватар для dani92
 
Регистрация: 17.02.2009
Сообщений: 132
По умолчанию

Цитата:
Сообщение от PIKACHU Посмотреть сообщение
Нет, вначале останавливаю
Код:
  FilterGraph.Stop;
  FilterGraph.ClearGraph;
  FilterGraph.DisconnectFilters;
  FilterGraph.active:=false;
Делаю изменения и пытаюсь запустить но при изменении выдает ошибку что файл занят.

ПС До запуска файла все изменения происходят без ошибки.
исходник в студию, так не пойму или пример
Чат по локальной сети http://fmchat.ucoz.kz - протестируйте плиз)))
а так delphi эта лучшая система программирования
dani92 вне форума Ответить с цитированием
Старый 26.11.2009, 21:32   #9
PIKACHU
Пользователь
 
Аватар для PIKACHU
 
Регистрация: 20.10.2009
Сообщений: 23
По умолчанию

Код:
var
 Post:int64;
 runing:boolean;

begin

 if FileEdit=FilePlayNow then //Смотрим занетый ли файл который редактируем если да запоминаем его координаты проигрывания.
  if FilterGraph.Active then
   begin
     runing:=true;
     FilterGraph.Stop;
     tmrVisual.Enabled:=False;
     Post:=FilterGraph.Position;
     Filtergraph.Active := False;
     Filtergraph.Stop;
     Filtergraph.DisconnectFilters;
     Filtergraph.ClearGraph;
   end;

//----------------------Изменяем ID3 тэг--------------
    Id3v11.SongName := edtTitle.Text;
    Id3v11.Artist := edtArtist.Text;
    Id3v11.Album := edtAlbum.Text;
    Id3v11.Year := edtYear.Text;
    Id3v11.GenreAsString := cmbGenre.Text;
    Id3v11.Comment := edtComment.Text;
    Id3v11.AlbumTrack := sedTrack.Value;

if not Id3v1.Commit then AlphaHints.ShowHint(sButton2, 'Облом'); //Собственно тут и плюхается там производятся запись в тег

 
 if runing then //если ранее процедура была выполнена перезапускаем его
   begin

     FilterGraph.RenderFile(FileEdit);
     FilterGraph.Position:=Post;
   end;
   AlphaHints.HideHint;
PIKACHU вне форума Ответить с цитированием
Старый 27.11.2009, 09:50   #10
dani92
Форумчанин
 
Аватар для dani92
 
Регистрация: 17.02.2009
Сообщений: 132
По умолчанию

попробуй так
Код:
if FilterGraph.Active=true then
   begin
     runing:=true;
     FilterGraph.Stop;
     tmrVisual.Enabled:=False;
     Post:=FilterGraph.Position;
     Filtergraph.Active := False;
     Filtergraph.Stop;
     Filtergraph.DisconnectFilters;
     Filtergraph.ClearGraph;
   end;
Чат по локальной сети http://fmchat.ucoz.kz - протестируйте плиз)))
а так delphi эта лучшая система программирования
dani92 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблема с DSPACK dani92 Мультимедиа в Delphi 3 19.11.2009 15:39
Проблема освобождения ресурсов при работе с COM (IHTMLDocument2) Антон Ю.Б. Общие вопросы Delphi 0 27.07.2009 17:34
DSPack - установка Krechet Мультимедиа в Delphi 2 09.07.2009 10:23
проблема с DSPack XATAB Мультимедиа в Delphi 0 26.06.2009 20:15
Проблема такова: язык:Delphi7; сохранения файла; загрузка файла в String Grid lightdevil Общие вопросы Delphi 3 06.03.2009 23:10