Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Microsoft Windows 7 (http://forum.oszone.net/forumdisplay.php?f=95)
-   -   Добраться до рабочего стола через cmd (http://forum.oszone.net/showthread.php?t=284522)

dasgespenst 03-07-2014 11:42 2371454

Добраться до рабочего стола через cmd
 
На компьютерах рабочий стол, мои документы и загрузки перемещены на раздел d:\<randomname>\

randomname это старое название пользователей, которых уже давно не существует.

%userprofile% естественно показывает только c:\users\kolya\ без desktop каталогов.

Есть cmd-jscript скрипт который заходит в каталог и меняет пути ярлыков. Вот этому скрипту как-то нужно попасть на рабочий стол, но при этом переменной рабочего стола я не нашел.

читать дальше »
Код:

@set @script=0 /*
set "From=\\oldserver\"
set "To=\\newserver\"

cd %userprofile%\desktop
for %%i in (*.lnk) do cscript /e:jscript "%~f0" "%%~fi" "%From%" "%To%"

exit

*/
var LinkName=WScript.Arguments.Item(0);
var RplsFrom=WScript.Arguments.Item(1);
var RplaceTo=WScript.Arguments.Item(2);
var WshShell = WScript.CreateObject("WScript.Shell");
var oShellLink = WshShell.CreateShortcut(LinkName);
oShellLink.TargetPath=oShellLink.TargetPath.replace(RplsFrom,RplaceTo);
oShellLink.Save();


WindowsNT 03-07-2014 12:48 2371483

Group Policy Preferences не катят?

Iska 03-07-2014 13:34 2371500

Изложите то же самое, но по-русски. Ни рожна непонятно.

dasgespenst 03-07-2014 14:16 2371517

Цитата:

Group Policy Preferences не катят?
А как этот %DesktopDir% связать с cmd? У меня "dir %DesktopDir%" ничего не показывает. Основные ярлыки которые мне известны я поменял, но там пользователи еще создали.

kol48 03-07-2014 14:21 2371522

В задаче не всё ясно. Что конкретно делает скрипт? Для чего он это делает?

На всякий случай: %userprofile%\Desktop — покажет рабочий стол текущего пользователя. Но я подозреваю, что не на этот рабочий стол нужно попадать. В этом случае нужно знать полный путь до нужного каталога.

dasgespenst 03-07-2014 14:27 2371525

Цитата:

На всякий случай: %userprofile%\Desktop — покажет рабочий стол текущего пользователя. Но я подозреваю, что не на этот рабочий стол нужно попадать. В этом случае нужно знать полный путь до нужного каталога.
Показывает при условии что он находится в %userprofile%, а в моём случае рабочий стол на разделе D: и пути у всех разные.

PS: Я тогда наверное скрипт переделаю чтобы он все .lnk искал на жестких дисках.

kol48 03-07-2014 14:31 2371528

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

dasgespenst 03-07-2014 14:52 2371535

А скрипт в ярлыках меняет сетевые пути. Т.е. допустим был \\oldserver\kolya\, а стал \\newserver\kolya. Посмотрю что в реестре.

Dzirt2005 03-07-2014 15:48 2371562

dasgespenst, вы же все равно используете vb/java скрпит, зачем пишете про cmd? Так подойдет?
Код:

var ws = WScript.CreateObject( "WScript.Shell" );
var dsf = ws.SpecialFolders( "Desktop" );
WScript.Echo( "Desktop: " + dsf );



Время: 01:08.

Время: 01:08.
© OSzone.net 2001-