<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; JavaScript:путь_к_рабочему_столу]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=7177&amp;type=atom" />
	<updated>2012-05-16T13:18:47Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=7177</id>
		<entry>
			<title type="html"><![CDATA[Re: JavaScript:путь_к_рабочему_столу]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=60389#p60389" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>shiz пишет:</cite><blockquote><p>На это не стоит полагаться, мой рабочий стол вы так уж точно не найдёте.</p></blockquote></div><p>Подобное решение было предложено исключительно из соображения, заключающегося в использовании только ActiveX-элемента Scripting.FileSystemObject<br />Предложенные вами варианты,конечно же, являются более правильными и полными</p>]]></content>
			<author>
				<name><![CDATA[BatLife]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27962</uri>
			</author>
			<updated>2012-05-16T13:18:47Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=60389#p60389</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: JavaScript:путь_к_рабочему_столу]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=60376#p60376" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>stir пишет:</cite><blockquote><p>shiz, извините, но я думал Вы все поймете, что это мои собственные функции и их расписывать здесь не имело смысла, т.к. не в них все упирается..</p></blockquote></div><p>В них упирается ответ на вопрос, как вы технически собираетесь сохранять с помощью внутренних средств JS на компьютер пользователя, по-моему я ясно выразил, что именно меня интересует в вашем скрипте.<br />С самого начала следовало не ходить вокруг да около и рассуждать &quot;если это МАК или Лунукс-подобная система&quot;, а конкретно сказать, что вам требуется работоспособность в IE с низкими настройками безопасности, позволяющими запуск небезопасных элементов ActiveX (а это не совсем &quot;внутренние средства JS&quot;) - от этого зависело быстрое получение конструктивного ответа. Собственно говоря, я его вам уже дал (как говорится, &quot;<a href="http://ru.wikipedia.org/wiki/Sapienti_sat">Sapienti sat</a>&quot;): </p><div class="quotebox"><blockquote><p>...А если можете это сделать, то и рабочий стол найти должно быть раз плюнуть.</p></blockquote></div><p>Если быть точнее, то ответ такой: в таком случае рабочий стол находится точно так же, как и в WSH (и эта тема, на мой взгляд, изначально неправильно размещена в разделе &quot;JavaScript (<span class="bbu">браузерный</span>)&quot;): </p><div class="codebox"><pre><code>var WshShell = new ActiveXObject(&quot;WScript.Shell&quot;);
var UserDesktopPath = WshShell.SpecialFolders(&quot;Desktop&quot;);</code></pre></div><p>другой вариант (который, по-моему, может сработать при более высоких настройках безопасности): </p><div class="codebox"><pre><code>var Shell = new ActiveXObject(&quot;Shell.Application&quot;);
var UserDesktopPath = Shell.NameSpace(&quot;shell:Desktop&quot;).Self.Path;</code></pre></div><div class="quotebox"><cite>BatLife пишет:</cite><blockquote><p>Самый простой вариант, если использовать только ActiveX-элемент типа Scripting.FileSystemObject, будет вызов FSO.GetSpecialFolder(2), которая получить каталог TEMP текущего пользователя; возврат на два уровня выше даст корневой каталог пользователя, где будет доступна папка Рабочий стол</p></blockquote></div><p>На это не стоит полагаться, мой рабочий стол вы так уж точно не найдёте.</p>]]></content>
			<author>
				<name><![CDATA[shiz]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26249</uri>
			</author>
			<updated>2012-05-16T05:23:22Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=60376#p60376</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: JavaScript:путь_к_рабочему_столу]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=60372#p60372" />
			<content type="html"><![CDATA[<p>BatLife, реально большое спасибо за разъяснения! Я на досуге попробую выявить путь к рабочему столу, используя Вами предложенный алгоритм...</p><p>shiz, извините, но я думал Вы все поймете, что это мои собственные функции и их расписывать здесь не имело смысла, т.к. не в них все упирается..</p><p>createfiles(&#039;C:\\03-911.txt&#039;);// создает пустой тхт файл<br />writefiles(&#039;C:\\03-911.txt&#039;, err);// заполняет созданный файл ранее данными построчно</p><br /><p>ПС: Все скрипты я использую с оговоркой работоспособности в ИЕ8.. о чем сообщаю пользователям либо при входе и начале работы, либо в спецразделе (аналогия с &quot;О программе&quot; или &quot;Карта сайта&quot;).</p>]]></content>
			<author>
				<name><![CDATA[stir]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26486</uri>
			</author>
			<updated>2012-05-16T03:23:52Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=60372#p60372</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: JavaScript:путь_к_рабочему_столу]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=60369#p60369" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>shiz пишет:</cite><blockquote><p>Если &quot;внутренними средствами js не узнать путь к рабочему столу&quot;, то как <span class="bbu">внутренними</span> средствами JS сделать</p></blockquote></div><p>Вполне возможно, что подразумеваемые функции createfiles и writefiles заимствованы из какого-то готового решения для локальной интрасети, и используют ActiveX-элемент типа Scripting.FileSystemObject для манипуляции с файлом, что прекрасно работает на Internet explorer 5.5+</p><p>Однако в таком случае решение поставленной задачи не является сложным, например при помощи использование переменных окружения или базовых системных путей, можно легко извлечь расположение рабочего стола</p><p>Самый простой вариант, если использовать только ActiveX-элемент типа Scripting.FileSystemObject, будет вызов FSO.GetSpecialFolder(2), которая получить каталог TEMP текущего пользователя; возврат на два уровня выше даст корневой каталог пользователя, где будет доступна папка Рабочий стол</p><p>P.S. Если включать в рассмотрение &quot;дырявый&quot; браузер firefox, то в нем можно сделать сохранение файла в любой путь, доступный текущему системному пользователю, за счет одной из многочисленных уязвимостей, описанных здесь <a href="http://www.exploit-db.com/search/?action=search&amp;filter_page=1&amp;filter_description=firefox&amp;filter_author=&amp;filter_platform=0&amp;filter_type=0&amp;filter_lang_id=0&amp;filter_exploit_text=&amp;filter_port=0&amp;filter_osvdb=&amp;filter_cve=">http://www.exploit-db.com/search/?actio … ilter_cve=</a></p>]]></content>
			<author>
				<name><![CDATA[BatLife]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27962</uri>
			</author>
			<updated>2012-05-15T20:56:26Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=60369#p60369</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: JavaScript:путь_к_рабочему_столу]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=60346#p60346" />
			<content type="html"><![CDATA[<p>Для понимания это ничего не прибавляет. Если &quot;внутренними средствами js не узнать путь к рабочему столу&quot;, то как <span class="bbu">внутренними</span> средствами JS сделать: </p><div class="codebox"><pre><code>createfiles(&#039;C:\\03-911.txt&#039;);
writefiles(&#039;C:\\03-911.txt&#039;, err);</code></pre></div><p>В каких браузерах это будет работать?</p>]]></content>
			<author>
				<name><![CDATA[shiz]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26249</uri>
			</author>
			<updated>2012-05-15T09:06:13Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=60346#p60346</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: JavaScript:путь_к_рабочему_столу]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=60343#p60343" />
			<content type="html"><![CDATA[<p>shiz. Код привожу из рабочего примера с максимальным сжатием лишнего, но этого достаточно для общего понимания.</p><div class="codebox"><pre><code>function pr1() {
var nameserver=&quot;\\\\server&quot;;
var namefolder1= nameserver + &quot;\\arhiv\\scan\\&quot;;
auditfolder(namefolder1);
if (f1==1) {
//здесь тело проги
}
else 
{
var err=&#039;****&#039;;
createfiles(&#039;C:\\03-911.txt&#039;);
writefiles(&#039;C:\\03-911.txt&#039;, err);
alert(&quot;Ошибка такая-то, отчет сохранен там то&#039;);
}</code></pre></div><p>после этого можно запустить bat-ник и переместить на рабочий стол уже известный файл - C:\\log\\03-911.txt<br />можно и перед выводом сообщения это сделать, но так проще- отработал первый модуль, запустился второй..</p><p>Более воды лить необязательно, понятно, что внутренними средствами js не узнать путь к рабочему столу.</p>]]></content>
			<author>
				<name><![CDATA[stir]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26486</uri>
			</author>
			<updated>2012-05-15T06:43:15Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=60343#p60343</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: JavaScript:путь_к_рабочему_столу]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=60325#p60325" />
			<content type="html"><![CDATA[<p>И что вы к рабочему столу прицепились? У пользователя может быть элементарно отключен показ значков на рабочем столе - когда он увидит что на нём появилось? Или наоборот - рабочий стол замусорен так, что что-то новое трудно заметить. А может, он вообще Проводником не пользуется.</p>]]></content>
			<author>
				<name><![CDATA[shiz]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26249</uri>
			</author>
			<updated>2012-05-14T14:30:53Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=60325#p60325</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: JavaScript:путь_к_рабочему_столу]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=60318#p60318" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>stir пишет:</cite><blockquote><p>делаем и сохраняем на диск с помощью скрипта лог-файл</p></blockquote></div><p>Можно в этом месте подробнее, как вы собрались это делать с помощью браузерного скрипта? Аесли можете это сделать, то и рабочий стол найти должно быть раз плюнуть.</p>]]></content>
			<author>
				<name><![CDATA[shiz]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26249</uri>
			</author>
			<updated>2012-05-14T13:19:17Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=60318#p60318</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: JavaScript:путь_к_рабочему_столу]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=60306#p60306" />
			<content type="html"><![CDATA[<p>Rumata, нет как и все остальные.&nbsp; </p><p>Однако все-равно находят дырки в оси и .. воруют!</p><p>У меня есть теоритеческие мысли как это сделать - делаем и сохраняем на диск с помощью скрипта лог-файл, а потом другими средствами перемещаем на раб. стол.. выходит, как говорится, через терни .. но к рабочему столу пользователя раз нет иного пути, то пойдем таким.</p>]]></content>
			<author>
				<name><![CDATA[stir]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26486</uri>
			</author>
			<updated>2012-05-14T07:58:37Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=60306#p60306</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: JavaScript:путь_к_рабочему_столу]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=60241#p60241" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>stir пишет:</cite><blockquote><p>И было бы хорошо (!) иметь на рабочем столе какую-нибудь запись в тхт файлике о произошедшем случае.</p></blockquote></div><p>Или кто-то напишет js-скипт, который ворует ваши пароли или портит важные для вас документы, только потому что страница в браузере имеет доступ к локальным данным компьютера. Вы же не хотите этого?</p>]]></content>
			<author>
				<name><![CDATA[Rumata]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24846</uri>
			</author>
			<updated>2012-05-12T08:00:52Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=60241#p60241</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: JavaScript:путь_к_рабочему_столу]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=60240#p60240" />
			<content type="html"><![CDATA[<p>У меня есть сервак в локальной сети, есть прога на скрипте, с помощью оной и расшаренного ресурса хотел скопировать и/или создать необходимые ей файлы, которые после окончания работы удаляются за ненадобностью. Кол-во юзеров ограничено. Сохранение файлов происходит стандарным способом в js. Самое главное - файл отчета ошибок в ходе работы проги или пользователя хотелось бы помещать на рабочий стол юзера!</p><p>Пример. Корявый, но все же - Вы зашли на сайт, запустили на нем прогу расчета пути из точки а в точку б, ждете.. и баЦ! Error! либо вообще окно браузера исчезло в никуда. Кто виноват и что делать?? Никаких отчетов юзер не видит либо системные не должен видеть и разбираться.. для этого есть специалисты в этой области. И было бы хорошо (!) иметь на рабочем столе какую-нибудь запись в тхт файлике о произошедшем случае. <br />В противном случае никто не сможет толком понять и самое главное быстро - что произошло и как это исправить.</p><p>Вы не считаете это полезным - создание лога на столе юзера?</p><p>Знаете как прописать путь??</p>]]></content>
			<author>
				<name><![CDATA[stir]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26486</uri>
			</author>
			<updated>2012-05-12T07:35:30Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=60240#p60240</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: JavaScript:путь_к_рабочему_столу]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=59972#p59972" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>stir пишет:</cite><blockquote><p>Это такой пробел в браузерных скриптах..?<br />А как сохранить <strong>по разрешению пользователя</strong> на рабочий стол заведомо подготовленный файл (не зная заранее пути)?<br />Если сохранять на диск в любую папку - нет проблемм</p></blockquote></div><p>Никакого пробела в БРАУЗЕРНЫХ скриптах нет! С их помощью нельзя на компьютер пользователя сохранить кроме куков почти ничего (загрузить файл в кэш браузера, UserData в IE...) хоть по разрешению пользователя, хоть без оного. Ну допустим, вы узнаете путь, и как вы собираетесь сохранять туда файл?</p>]]></content>
			<author>
				<name><![CDATA[shiz]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26249</uri>
			</author>
			<updated>2012-05-04T16:10:20Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=59972#p59972</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[JavaScript:путь_к_рабочему_столу]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=59953#p59953" />
			<content type="html"><![CDATA[<p>Добрый день, Господа!</p><p>Не нашел встроенных конструкций для выявления полного пути к рабочему столу пользователя ПК, но есть с помощью WScript..<br />Это такой пробел в браузерных скриптах..?<br />А как сохранить <strong>по разрешению пользователя</strong> на рабочий стол заведомо подготовленный файл (не зная заранее пути)?<br />Если сохранять на диск в любую папку - нет проблемм, а вот с систмеными папками есть трудности, плюс разные ОСи у пользователей бывают, х32/64...</p><p>Находил сообщения, что можно найти полный путь через реестр Виндовс... а если это МАК или Лунукс-подобная система, то еще больше проблемм..</p><p>Кто-нибудь занимался этим вопросом, есть ли информация, где рыть? Поиск ничего конкретного и толкового мне не дает пока что..</p>]]></content>
			<author>
				<name><![CDATA[stir]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26486</uri>
			</author>
			<updated>2012-05-04T02:55:23Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=59953#p59953</id>
		</entry>
</feed>
