![]() |
|
|
|
|
#1
|
||||
|
||||
|
Ребята помогите вот мой вопрос
Я пишу программу и мне нада чтоб он заходил в папку программы открывал файл и чистил информацию и пересохранял... НО самое главное чтоб пользователь не слидил за ходом событий --------- Смысл моей программы прост я хочу чтоб с помощью ей пользователь удалял с своего компа Windows Messenger Для этого нада 1)Включить отображение скрытых файлов 2)Зайти в папку 3)Открыть файл sysoc.inf 4)Найти строку msmsgs=msgrocm.dll,0cEntry,mgmggs.inf,hide,7 5)Сделать msmsgs=msgrocm.dll,0cEntry,mgmggs.inf,,7 Ну а потом тока пользователю удалить через Установка-Удаление программ-Установка компонентов Виндоуз ------ Задача моя только потренироваться с модулем ShellAPI ---- Я знаю тока как открыть папку и файл если не ошибаюсь так ФАЙЛ- Код:
ShellExecute(Handle,nil,'ПУТЬ',nil,nil,SW_RESTORE); Код:
ShellExecute(Handle,'explore','ПУТЬ',nil,nil,SW_RESTORE); SW_RESTORE -это Активизирует и отображает окно. Если это окно свернуто или развернуто то оно восстанавлмвается до своих первоначальныз размеров и отображается в первоначальной позиции(почти тоже самое что SW_SHOWNORMAL) То если не писать его не видно будет ход действий и как изменять информацию в файле заменять ее в нужном месте и пересохранять... ![]() |
|
#2
|
||||
|
||||
|
Что-то я не понял. Ты хочешь сделать чтобы пользователь видел все эти действия? Или что?
|
|
#3
|
||||
|
||||
|
Я хочу наобарот работус файлов но чтоб пользователь не видел все то что будет произходить
|
|
#4
|
||||
|
||||
|
Код:
var
sl:TStringList;
i:integer;
begin
sl:=TStringList.Create;
sl.LoadFromFile('C:\...\sysoc.inf');
for i:=0 to sl.Count-1 do
if pos('msmsgs=msgrocm.dll',sl[i])>0 {как вариант =1} then
begin
sl[i]:='msmsgs=msgrocm.dll,0cEntry,mgmggs.inf,,7';
break;
end;
sl.SaveToFile('C:\...\sysoc.inf');
sl.Free;
end;Считает файл, заменит требуемую строку, и запишет. Путь естественно указать нужно |
|
#5
|
||||
|
||||
|
Ясно а если нужно втереть всю строку то как писать?
|
|
#6
|
||||
|
||||
|
Тоесть стереть
|