Войти

Показать полную графическую версию : [решено] Удаление ярлыков


7ka
11-04-2010, 18:07
Уважаемые форумчане, Всем доброго времени суток.
Прошу Вашей помощи в назревшей проблеме, перейду сразу к делу:
Устанавливаю необходимый софт из RunOnceEx, далее за установкой исполняется файл Clean.cmd в кодировке (ANSI) с следующим содержанием:

If Exist "%tmp%\soft" RD /S /Q "%tmp%\soft" >nul
If Exist "%allusersprofile%\Рабочий стол" Del /F /Q "%allusersprofile%\Рабочий стол\*.lnk" >nul
exit

... вообщем все замечательно, директория из которой ставится весь софт сносится без проблем, но вот ярлыки так и не удаляются.

Подскажите пожалуйста что в моем примере не так, может есть объективное решение моего вопроса? Заранее спасибо.

Iska
11-04-2010, 18:55
в кодировке (ANSI)
7ka, попробуйте поменять на подобающую, OEM.

seriych
11-04-2010, 18:58
7ka,
А ось какая? Если это семерка, то вместо "%allusersprofile%\Рабочий стол" надо "%PUBLIC%\Desktop".
С кодировкой ничего не напутал точно?

Vsirf
11-04-2010, 19:10
... вообщем все замечательно, директория из которой ставится весь софт сносится без проблем, но вот ярлыки так и не удаляются. »
7ka, если программа устанавливается для какого то пользователя, то ее ярлыки будут находится не в
%allusersprofile%
а в:
If Exist "%tmp%\soft" RD /S /Q "%tmp%\soft" >nul
If Exist "%имя пользователя%\Рабочий стол" Del /F /Q "%имя пользователя%\Рабочий стол\*.lnk" >nul
exit
вить установка есть для всех пользователей ( allusersprofile ) , и только для одного пользователя, так вот, ярлыки могут создаваться как в папке :
Documents and Settings\All Users\Рабочий стол\;
так и в папке :
Documents and Settings\Имя пользователя\Рабочий стол\;
ну это я про Windows XP, если у вас Windows 7 , то назначения папок могут быть другими, но принцип тот же :)

gora
11-04-2010, 19:18
7ka, про не правильную кодировку Вам уже сказали, но у меня тоже удаление с помощью постановочных знаков не прошло. А так удалил::: Кодировка DOS (866)
For %%a In ("%allusersprofile%\Рабочий стол\*.lnk") Do Del /F /Q "%%a" 2>nul

7ka
11-04-2010, 19:36
попробуйте поменять на подобающую, OEM.»
в notepad2 такой нет
А ось какая?»
XP
вить установка есть для всех пользователей ( allusersprofile ) , и только для одного пользователя, так вот, ярлыки могут создаваться как в папке : »
отдельно для пользователя я использую переменную %userprofile%
но у меня тоже удаление с помощью постановочных знаков не прошло. А так удалил:
:: Кодировка DOS (866)
For %%a In ("%allusersprofile%\Рабочий стол\*.lnk") Do Del /F /Q "%%a" 2>nul»
спасибо. попробую ваш способ)

попробуйте поменять на подобающую, OEM. »
сменил на ОЕМ в pspad. все получилось, спасибо :)

Iska
11-04-2010, 23:56
в notepad2 такой нет »
Notepad2 4.1.24, взятый отсюда: flo's freeware - Notepad2 (http://www.flos-freeware.ch/notepad2.html). Меню \File\Encoding\More… (или просто «F9»), в диалоговом окне «Encoding» выбираем «OEM (866)», если в окне уже был текст — соглашаемся с предупреждением. Теперь при сохранении кодировка файла будет OEM (она же 866, она же DOS, она же cp866, она же ibm-866 :)).




© OSzone.net 2001-2012