Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> автомотическое обновлений программы, как реализовать? 
V
    Опции темы
Плаха
Дата 30.5.2005, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 126
Регистрация: 10.11.2004
Где: МО п. Киевский

Репутация: нет
Всего: нет



Подскажите, как можно реализовать автомотическое обновлений программы. Может быт есть какой нибуть готовый модуль или плагин.

Это сообщение отредактировал(а) Плаха - 30.5.2005, 18:27
--------------------
Принимай то что есть и устраивайся как хочеш
PM MAIL ICQ   Вверх
Pakshin A. S.
Дата 30.5.2005, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 5056
Регистрация: 16.2.2003

Репутация: 21
Всего: 61



Это что тебе конкретно нужно? Через нет?

Лично я могу расписать способ "сделай сам" (т. е. без компонентов через прямое обращение к файлам).... smile
PM   Вверх
Плаха
Дата 31.5.2005, 10:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 126
Регистрация: 10.11.2004
Где: МО п. Киевский

Репутация: нет
Всего: нет



распиши если не трудно.
--------------------
Принимай то что есть и устраивайся как хочеш
PM MAIL ICQ   Вверх
Akella
Дата 31.5.2005, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



мне кажется, что нужно львиную долю кода писать в Dll и уже из программы качать новую Dll, выгружать старую, проверять новую, и загружать новую.
PM MAIL   Вверх
mvdr
Дата 31.5.2005, 12:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


физик
***


Профиль
Группа: Участник
Сообщений: 1349
Регистрация: 31.12.2004
Где: Волгоград, Россия

Репутация: 1
Всего: 42



можно сделать файл, в котором хранить инфу типа даты программы, ее номера, или названия всех файлов, используемых в программе. при записи подобной программы (новой) сравнивать 2 файла (которые содержат такую инфу), в результате, если новая программа является новее, то производить перезаписывание. можно поподробнее описать, если заинтересует


--------------------
Появляюсь редко, но часто метко

Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано
PM ICQ   Вверх
Плаха
Дата 31.5.2005, 13:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 126
Регистрация: 10.11.2004
Где: МО п. Киевский

Репутация: нет
Всего: нет



Понятно. Спасибо. Буду пробовать

--------------------
Принимай то что есть и устраивайся как хочеш
PM MAIL ICQ   Вверх
Snowy
Дата 31.5.2005, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Цитата
автомотическое обновлений программы

Так тебе через инет нужно или как?
Программа должна обновлять саму себя или, как у антивирусов - программа обновления отдельно?
PM MAIL   Вверх
mvdr
Дата 31.5.2005, 14:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


физик
***


Профиль
Группа: Участник
Сообщений: 1349
Регистрация: 31.12.2004
Где: Волгоград, Россия

Репутация: 1
Всего: 42



если что, я могу более подробно рассказать, нежели написал


--------------------
Появляюсь редко, но часто метко

Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано
PM ICQ   Вверх
z-END
Дата 31.5.2005, 15:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

Репутация: 11
Всего: 102



Цитата(Femida @ 31.5.2005, 13:59)
можно сделать файл, в котором хранить инфу типа даты программы, ее номера, или названия всех файлов, используемых в программе. при записи подобной программы (новой) сравнивать 2 файла (которые содержат такую инфу), в результате, если новая программа является новее, то производить перезаписывание. можно поподробнее описать, если заинтересует

Versioninfo еще никто не отменял smile отправляем на сервер данные сего чуда, сервер пережевывает и выплевывает ответ, что для версии х.хх.хххх.хххххх есть обновление или патч.
обновление - чаще всего новый дистрибутив приложения целиком или только с обновленными элементами (плагнины, внешние ресурсы и т.п)
патчи - програмки которые содержат в себе данные о разнице кода в оригинальном приложении и в обновленном, и при запуске меняют ту часть файла которая была модифицирована


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
mvdr
Дата 31.5.2005, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


физик
***


Профиль
Группа: Участник
Сообщений: 1349
Регистрация: 31.12.2004
Где: Волгоград, Россия

Репутация: 1
Всего: 42



z-END, я не для сервера, а для случая без него.


--------------------
Появляюсь редко, но часто метко

Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано
PM ICQ   Вверх
z-END
Дата 31.5.2005, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

Репутация: 11
Всего: 102



Femida а откуда тогда обновление? (тем более автоматическое)
моя не понимать smile


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
Snowy
Дата 31.5.2005, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Код

var
  sl: TStringList;
begin
  sl:=TStringList.Create;
  sl.Add(':start');
  sl.Add('del "'+ParamStr(0)+'" >nul');
  sl.Add('if Exist "'+ParamStr(0)+'" goto start');
  sl.Add('copy Новый_файл.exe "'+ParamStr(0)+'"');
  sl.Add('"'+ParamStr(0)+'"');
  sl.Add('del %0 >nul');
  sl.SaveToFile('$$tmp$$.bat');
  WinExec('$$tmp$$.bat',SW_HIDE);
  Application.Terminate;
end;

PM MAIL   Вверх
mvdr
Дата 31.5.2005, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


физик
***


Профиль
Группа: Участник
Сообщений: 1349
Регистрация: 31.12.2004
Где: Волгоград, Россия

Репутация: 1
Всего: 42



z-END, есть программа. потом автор выпускает новую, ты скачиваешь ее. и ставишь себе - и вот тебе и проверка


--------------------
Появляюсь редко, но часто метко

Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано
PM ICQ   Вверх
z-END
Дата 31.5.2005, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

Репутация: 11
Всего: 102



Femida smile круто... допустим у меня есть КульСофт 2.0 я скачиваю с сайта КульСофт 1.0 и конечно-же я подумаю что это более новая версия..
какая проверка?! версии приложений как раз для этого и существуют чтобы юзеры (ламеры и прочие) могли понять где что новееsmile

ЗЫ и в каком-же месте тогда здесь "автоматическое обновление" ? юзер автоматически при выходе в инет делает-чтоли? smile


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
mvdr
Дата 31.5.2005, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


физик
***


Профиль
Группа: Участник
Сообщений: 1349
Регистрация: 31.12.2004
Где: Волгоград, Россия

Репутация: 1
Всего: 42



z-END, ладно, но номер ничего не говорит. Допутим: СуперЛамер выбирает ОС. Он видит: 95, 98, 2000, потом идет Me,XP .Откуда ему знать, что ХР это самая последняя из представленных? У него стоит ХР, Он ставит Винду 2000, а ему и говорят: что ваша 0С новее


--------------------
Появляюсь редко, но часто метко

Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано
PM ICQ   Вверх
z-END
Дата 31.5.2005, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

Репутация: 11
Всего: 102



Femida открою тебе секрет, что даже у виндовс ХП есть версия, и она выше чем у 95, 98, 2000, МЕ, щелкни правой мышкой на "мой компутер" и выбери свойства и посмотри вкладку "общие" smile)
Добавлено @ 17:09
Но вообще согласен, ситауцая такая возможна.. но по одной причине - нерадивые разработчики софтаsmile


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
mvdr
Дата 31.5.2005, 17:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


физик
***


Профиль
Группа: Участник
Сообщений: 1349
Регистрация: 31.12.2004
Где: Волгоград, Россия

Репутация: 1
Всего: 42



Это не секрет smile
ведь драйвера оповещают каким то образом?! (но некоторые, сволочи нет)


--------------------
Появляюсь редко, но часто метко

Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано
PM ICQ   Вверх
Snowy
  Дата 31.5.2005, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Вот, нарисовал процедурку обновления с инета.
Для ее работы требуется, чтобы было подключение к инету.
Хотя... И без него не должно сглючить.
Код

procedure InetUpdate;
const
  url='http://www.mysite.ru/myprog.exe'; // откуда качать новую версию
  lm='last.ver'; // Файл, где храним дату последнего обновления
  tmp='temp.exe'; // временный файл, куда скачать новую версию
  bat='$$tmp$$.bat'; // временный батник
var
  http: TIdHttp;
  s,t:  string;
  m:    TMemoryStream;
  sl:   TStringList;
begin
  sl:=TStringList.Create;
  m:=TMemoryStream.Create;
  try
    sl.LoadFromFile(lm); // читаем из файла нашу дату
    t:=sl[0];
  except t:='-'; end;
  http:=TIdHttp.Create(nil);
  http.Head(url); // спрашиваем, какая дата у файла в инете
  s:=http.Response.RawHeaders.Values['Last-Modified'];
  if s<>t then // если в инете другая - закачать
    try
      // ShowMessage('Есть новая версия');
      http.Get(url,m); // закачать
      m.SaveToFile(tmp); // сохраняем во временный файл
      m.Position:=0;
      // ShowMessage('Готов к обновлению');
      sl.Clear;
      sl.Add(s);
      sl.SaveToFile(lm); // обновляем дату в файле с датой
    finally
      http.Free; m.Free;
    end;
  if FileExists(tmp) then begin // если есть новый файл, делаем батник
    sl.Clear;
    sl.Add(':start');
    sl.Add('del "'+ParamStr(0)+'" >nul');
    sl.Add('if FileExist "'+ParamStr(0)+'" goto start');
    sl.Add('copy '+tmp+' "'+ParamStr(0)+'"');
    sl.Add('del '+tmp+' >nul');
    sl.Add('"'+ParamStr(0)+'"');
    sl.Add('del %0 >nul');
    sl.SaveToFile(bat);
  end;
  sl.Free;
  if FileExists(bat) then begin // если есть батник, стартуем замену себя
    WinExec(bat,SW_HIDE);
    Application.Terminate;
  end;
end;

P.S. Сам не проверял, но работать должно.
P.P.S. Вопрос с прокси решайте уже сами.
P.P.P.S. Почему дату храню в отдельном файле? А потому, что мне нужно хранить ее в том же виде, какой выдает сервер. А разные сервера оформляют строку по разному.

Это сообщение отредактировал(а) Snowy - 31.5.2005, 17:41
PM MAIL   Вверх
Гость_Юра
Дата 31.5.2005, 18:36 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Вот еще вопрос, может конечно не в тему(тогда сории smile

Например я сделал прогу версии 1.2.0 в ней оказался большой глюк(например "if ... then" забыл поставить коегде) и я быстро сделел версию 1.2.1 без глюка. И выложил новую версию. Но exe'шник моей проги весть 2,5 mb и юзеру качать каждый раз 2,5 метра просто влом(или дорого). Как бы сделать такую маленькую прожку(патч) которая бы "превращала" прогу версии 1.2.0 в 1.2.1.
  Вверх
z-END
Дата 31.5.2005, 18:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

Репутация: 11
Всего: 102



в JEDI есть для этого компонет. или пиши сам, смысл патча я писал выше


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
Гость_Юра
Дата 31.5.2005, 19:02 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Подкить пример использования Джедаевскоко(JEDI) компонента, а то я сёдня туплю.
  Вверх
Snowy
Дата 1.6.2005, 09:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



У Кладова есть утилитка, которая делает маленький патч.
Как раз для таких целей, когда поменялся не байтик в коде, а сменилась версия..
Если сходить на страницу KOL (http://bonanzas.rinet.ru/) , там найдешь.
(http://bonanzas.rinet.ru/updater.zip - GUI версия)
(http://bonanzas.rinet.ru/CUpdater.zip - консольная версия)
PM MAIL   Вверх
Неназываемый
Дата 2.6.2005, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 34
Регистрация: 25.5.2005

Репутация: нет
Всего: нет



А я просто дистрибутив сделал с BPL а обновляется ASPack'нутый сжатый экзешник. У меня 40 кб. Я думаю это не много даже для диал аперов.
PM MAIL   Вверх
MacTep
Дата 8.2.2007, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1292
Регистрация: 4.8.2003
Где: г. Самара

Репутация: 4
Всего: 4



Snowy, можно небольшое пояснение по твоему коду??? Что-то не догоняю, что здесь и к чему?
Код

var
  sl: TStringList;
begin
  sl:=TStringList.Create;
  sl.Add(':start');
  sl.Add('del "'+ParamStr(0)+'" >nul');
  sl.Add('if Exist "'+ParamStr(0)+'" goto start');
  sl.Add('copy Новый_файл.exe "'+ParamStr(0)+'"');
  sl.Add('"'+ParamStr(0)+'"');
  sl.Add('del %0 >nul');
  sl.SaveToFile('$$tmp$$.bat');
  WinExec('$$tmp$$.bat',SW_HIDE);
  Application.Terminate;
end;



--------------------
(A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :)
PM MAIL   Вверх
Rodman
Дата 8.2.2007, 11:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 7
Всего: 122



Код

var
  sl: TStringList;
begin
  sl:=TStringList.Create;
  sl.Add(':start'); //создание лэйбла
  sl.Add('del "'+ParamStr(0)+'" >nul');// удаление программы источника (старой)
  sl.Add('if Exist "'+ParamStr(0)+'" goto start');// проверка на удаление
  sl.Add('copy Новый_файл.exe "'+ParamStr(0)+'"'); // переименовка нового имени на старое
  sl.Add('"'+ParamStr(0)+'"'); // запуск новой версии
  sl.Add('del %0 >nul'); // удаления bat (сам себя)
  sl.SaveToFile('$$tmp$$.bat');// создание bat
  WinExec('$$tmp$$.bat',SW_HIDE); //запуск
  Application.Terminate;
end;

PM MAIL WWW Skype GTalk YIM MSN   Вверх
MacTep
Дата 8.2.2007, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1292
Регистрация: 4.8.2003
Где: г. Самара

Репутация: 4
Всего: 4



Rodman, спасибо, сейчас попробую. smile Если работает, сразу плюс тебе в репутацию. smile


--------------------
(A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :)
PM MAIL   Вверх
Snowy
Дата 8.2.2007, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



А куда оно денется.
Проверено не один десяток раз smile
PM MAIL   Вверх
Rodman
Дата 8.2.2007, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 7
Всего: 122



я тоже его когда то реализовал... по этому примеру.
PM MAIL WWW Skype GTalk YIM MSN   Вверх
MacTep
Дата 8.2.2007, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1292
Регистрация: 4.8.2003
Где: г. Самара

Репутация: 4
Всего: 4



Странно, но не работает. Как будто исходный файл просто не удаляется... Не понимаю, что такое...

Добавлено @ 12:50 
Извините, работает. smile Но... Если в названиях папок, в которой лежат эти два файла (старая прога и новая) встречаются русские символы или пробелы - все, прога не работает. Что делать? с этим можно как-то бороться?

И странно так: не работает удаление новой версии файла... странно... она же в конце удалиться должна.... как реализовать - не понятно...

Это сообщение отредактировал(а) MacTep - 8.2.2007, 12:57


--------------------
(A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :)
PM MAIL   Вверх
Snowy
Дата 8.2.2007, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Код

var
  sl: TStringList;
  s:  string;
begin
  sl:=TStringList.Create;
  sl.Add(':start');
  sl.Add('del "'+ParamStr(0)+'" >nul');
  sl.Add('if Exist "'+ParamStr(0)+'" goto start');
  sl.Add('copy Новый_файл.exe "'+ParamStr(0)+'"');
  sl.Add('"'+ParamStr(0)+'"');
  sl.Add('del %0 >nul');
  s := sl.Text; AnsiToOEM(PChar(s), PChar(s)); sl.Text := s;
  sl.SaveToFile('$$tmp$$.bat');
  WinExec('$$tmp$$.bat',SW_HIDE);
  Application.Terminate;
end;

PM MAIL   Вверх
MacTep
Дата 8.2.2007, 13:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1292
Регистрация: 4.8.2003
Где: г. Самара

Репутация: 4
Всего: 4



С этим кодом заработала замена файла новым. Но две проблемы так и остались: не удаляется батник, не удаляется обновление. ... smile


--------------------
(A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :)
PM MAIL   Вверх
Snowy
Дата 8.2.2007, 13:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Ну так сам удали.
Программа же перезапускается.
Вот и приберись за собой smile
Можно также добавить
Код

 sl.Add('copy Новый_файл.exe "'+ParamStr(0)+'"');
 sl.Add('del Новый_файл.exe');

PM MAIL   Вверх
MacTep
Дата 8.2.2007, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1292
Регистрация: 4.8.2003
Где: г. Самара

Репутация: 4
Всего: 4



Все, вопрос решен. Rodman & Snowy - всем по +1. smile Благодарю... smile


--------------------
(A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :)
PM MAIL   Вверх
dumb
Дата 8.2.2007, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 13
Всего: 158



чтобы удалялся батник, перезапускать возможно нужно так:
Код

sl.Add('start "" "'+ParamStr(0)+'"');

PM MAIL   Вверх
MacTep
Дата 8.2.2007, 14:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1292
Регистрация: 4.8.2003
Где: г. Самара

Репутация: 4
Всего: 4



Что делать, если батник выдает кучу ошибок вида "Отказано в доступе" после каждой попытки удалить exe файл? Есть такая строка: D:\6\interstol>del D:\6\interstol\InterStol.exe  1>nul Что здесь обозначает 1>nul?


--------------------
(A)bort, (R)etry, (I)gnore = Haфиг, Heфиг, Пoфиг ... :)
PM MAIL   Вверх
Snowy
Дата 8.2.2007, 14:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



>nul означает, что мы не хотим видеть сообщений.
Да и ничего страшного - окно-то скрыто smile
PM MAIL   Вверх
Bose
Дата 8.2.2007, 17:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: 23
Всего: 51



Цитата(MacTep @  8.2.2007,  14:35 Найти цитируемый пост)
Что делать, если батник выдает кучу ошибок вида "Отказано в доступе" после каждой попытки удалить exe файл?

Значит, или нет прав на запись, либо файл используется. 

сколько я не думал на тему обновлений, Идеальный вариант, судя по всему - делать Windows Installer инсталляции. Правда, для того, чтобы с ним разобраться придётся прошерстить тонны документации.  smile 
PM MAIL WWW Skype   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1469 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.