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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.02.2013, 11:08   #11
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

ExtractFileDir(ParamStr(0))+'\userc onfig.cfg'
действительно дает путь к существующему файлу?
Кстати а зачем файл закреплять как только читаемый, если ты все равно в него пишешь каждый раз?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.02.2013, 12:15   #12
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Я бы поставил точку останова на
Код:
for i:= 0 to SL.Count-1 do
и убедился, что userconfig.cfg удален. Скорее всего нет, да и атрибут только для чтения не сброшен
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 09.02.2013, 12:44   #13
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Цитата:
Сообщение от Host-2013 Посмотреть сообщение
еще раз ВНИМАТЕЛЬНО перечитай код... все сбрасывается в самом начале
И что я там должен увидеть?
Код:
GoCMD('attrib -r "%~dp0userconfig.cfg"');
...
GoCMD('del "%~dp0userconfig.cfg"');
Это? Ещё не известно что там находится.

Замени это на
Код:
NewGoCMD('attrib -r "%~dp0userconfig.cfg"');
...
NewGoCMD('del "%~dp0userconfig.cfg"');
Это точно сработает
eoln вне форума Ответить с цитированием
Старый 09.02.2013, 15:06   #14
Host-2013
Пользователь
 
Регистрация: 02.02.2013
Сообщений: 63
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
ExtractFileDir(ParamStr(0))+'\userc onfig.cfg'
действительно дает путь к существующему файлу?
Кстати а зачем файл закреплять как только читаемый, если ты все равно в него пишешь каждый раз?
да дает, попробуй просто writeln вывести
а чтобы всякие нехорошие админы не прописывали в конфиг всякую чепуху вроде рекламы или bind mouse1 kill :D в кс играл?
Цитата:
Сообщение от Аватар Посмотреть сообщение
Я бы поставил точку останова на
Код:
for i:= 0 to SL.Count-1 do
и убедился, что userconfig.cfg удален. Скорее всего нет, да и атрибут только для чтения не сброшен
как делать трасировку до точки? не умею трасировку в делфи делать хоть убей не понятно там ничего
Цитата:
Сообщение от eoln Посмотреть сообщение
И что я там должен увидеть?
Код:
GoCMD('attrib -r "%~dp0userconfig.cfg"');
...
GoCMD('del "%~dp0userconfig.cfg"');
Это? Ещё не известно что там находится.

Замени это на
Код:
NewGoCMD('attrib -r "%~dp0userconfig.cfg"');
...
NewGoCMD('del "%~dp0userconfig.cfg"');
Это точно сработает
попробуй почитать внимательно тему... выше давал код процедуры...
Host-2013 вне форума Ответить с цитированием
Старый 09.02.2013, 15:13   #15
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
как делать трасировку до точки? не умею трасировку в делфи делать хоть убей не понятно там ничего
В данном случае и понимать ничего не надо. Ставим точку останова на следующей команде после удаления файла. Запускаем из-под дельфи. Остановилось и смотрим любым способом (проводник, total commander или любым другим) удалился ли файл
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 09.02.2013, 15:36   #16
Host-2013
Пользователь
 
Регистрация: 02.02.2013
Сообщений: 63
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
В данном случае и понимать ничего не надо. Ставим точку останова на следующей команде после удаления файла. Запускаем из-под дельфи. Остановилось и смотрим любым способом (проводник, total commander или любым другим) удалился ли файл
значит так:
1. атрибуты снимаются это 100%
2. но файл по всей видимости не удаляется хотя путь указан тем же способом, что и при снятии атрибутов
3. текст в файле не заменяется
4. и вообще курсор в дебаггере (когда выдает ошибку) стоит на строке присвоения атрибутов как ни странно... тупо говорит не хватает прав не представляю что это может значить...
Host-2013 вне форума Ответить с цитированием
Старый 09.02.2013, 15:50   #17
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
попробуй просто writeln вывести
Это мне? Это я должен попробовать? Стесняюсь спросить, каким образом?
Цитата:
а чтобы всякие нехорошие админы не прописывали в конфиг всякую чепуху вроде рекламы или bind mouse1 kill
Так может просто лучше не допускать их к этому файлу? Сейчас пока что ты в роли такого админа выступаешь.
Цитата:
атрибуты снимаются это 100%
Хватит издеваться над атрибутами. Между прочим твоя GoCMD, которая похоже завязана на терминал винды весьма неудачный выбор.
Для работы с атрибутами надежнее будет использовать SetFileAttributes() а для удаления DeleteFile(). Прекращай с командником баловаться.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.02.2013, 16:05   #18
Host-2013
Пользователь
 
Регистрация: 02.02.2013
Сообщений: 63
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Это мне? Это я должен попробовать? Стесняюсь спросить, каким образом?

Так может просто лучше не допускать их к этому файлу? Сейчас пока что ты в роли такого админа выступаешь.

Хватит издеваться над атрибутами. Между прочим твоя GoCMD, которая похоже завязана на терминал винды весьма неудачный выбор.
Для работы с атрибутами надежнее будет использовать SetFileAttributes() а для удаления DeleteFile(). Прекращай с командником баловаться.
ну я то пробовал... а что так сложно создать проект с этим кодом и в этой же папке создать хоть пустой файл cfg?

когда заходишь на сервер они могут прописывать в твоем клиенте ну что их душе угодно, от плохих команд (amx_destroyer) до закачки в клиент вирусов и запуска их (точно знаю что реально, потому что со мной лично такое уже было)

ну может и надежнее... я просто cmd в этом отношении знаю немного лучше паскаля, и чем вам не угодила моя процедура?

п.с. кстати попробовал ваши процедуры, подскажите SetFileAttributes меняет атрибут на другой, а как вообще убрать то?

Последний раз редактировалось Host-2013; 09.02.2013 в 17:12.
Host-2013 вне форума Ответить с цитированием
Старый 09.02.2013, 20:05   #19
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
а что так сложно создать проект с этим кодом и в этой же папке создать хоть пустой файл cfg?
А вот прикинь - да. Удивлен? Давай я тебе кину пару строчек своего проекта какого нибудь с упреком "Ану, слабаче, воссоздай его в полной мере". Пу-у-упок развяжется.
Цитата:
потому что со мной лично такое уже было
Тогда с чего ты взял что такое будет?
Цитата:
когда заходишь на сервер
Серверов что ли мало в сети?
Цитата:
и чем вам не угодила моя процедура?
Тем что ее нет. Это во-первых.
Цитата:
как вообще убрать то?
Если не ошибаюсь то булевым отрицанием.
Например:
Код:
(... not FILE_ATTRIBUTE_HIDDEN or FILE_ATTRIBUTE_NORMAL
Должно снять скрытый атрибут.

P.S. Ерундой, батенька, страдаешь. Защищаться нужно не так.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.02.2013, 21:30   #20
Host-2013
Пользователь
 
Регистрация: 02.02.2013
Сообщений: 63
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
А вот прикинь - да. Удивлен? Давай я тебе кину пару строчек своего проекта какого нибудь с упреком "Ану, слабаче, воссоздай его в полной мере". Пу-у-упок развяжется.
одно дело большой проект, другое крохотная консольная софтина... и потом я не понимаю как вы отвечаете на вопросы даже не загружая делфи... (ну какие то может и можно, но чуть посложнее и уже без делфи под рукой не обойтись...)

Цитата:
Сообщение от Stilet Посмотреть сообщение
Тогда с чего ты взял что такое будет?
с того что такое было...
Цитата:
Сообщение от Stilet Посмотреть сообщение
Серверов что ли мало в сети?
да, мало... а по скольку я заядлый читер, кс мне пытаются сломать на каждом 10м :D
Цитата:
Сообщение от Stilet Посмотреть сообщение
Тем что ее нет. Это во-первых.
если еще раз внимательно прочитать тему вы ее увидите... вы тут все страдаете невнимательностью?
Цитата:
Сообщение от Stilet Посмотреть сообщение
Если не ошибаюсь то булевым отрицанием.
Например:
Код:
(... not FILE_ATTRIBUTE_HIDDEN or FILE_ATTRIBUTE_NORMAL
Должно снять скрытый атрибут.
constant expression violates subrange bounds
Цитата:
Сообщение от Stilet Посмотреть сообщение
P.S. Ерундой, батенька, страдаешь. Защищаться нужно не так.
сразу видно человека не имеющего дела с кс, давай я не буду учить тебя программировать, а ты меня защищать кс от поломок? зайди на любой читерский сайт - первейший способ от злых админов - все папку cstrike сделать "для чтения"
Host-2013 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Необработанное исключение Faton 11 Общие вопросы C/C++ 4 31.10.2012 00:29
Неизвестное программное исключение Стелс Общие вопросы Delphi 10 18.09.2011 07:29
WebClient исключение MyXa Общие вопросы .NET 4 02.02.2011 13:47
Исключение (Delphi) VadEr Помощь студентам 2 05.06.2009 15:29
Исключение EIdReadTimeout Pedro Работа с сетью в Delphi 1 22.09.2007 22:51