<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[My Visual Database — Открыть файл с пробелами в адресе]]></title>
		<link>https://myvisualdatabase.com/forum/viewtopic.php?id=632</link>
		<atom:link href="https://myvisualdatabase.com/forum/extern.php?action=feed&amp;tid=632&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[The most recent posts in Открыть файл с пробелами в адресе.]]></description>
		<lastBuildDate>Wed, 29 Oct 2014 18:35:34 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3228#p3228</link>
			<description><![CDATA[<p>Спасибо! В тестовом работает:<br /></p><div class="codebox"><pre><code>procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);

var
   sFolder: string;

begin
OpenFile(&#039;c:\Documents and Settings\Фильм\VIDEO&#039;);
end;


begin

end.</code></pre></div><p>Осталось перенести в свой проект <img src="https://myvisualdatabase.com/forum/img/smilies/smile.png" width="15" height="15" alt="smile" /><br />С помощью Дмитрия РЕШЕНО: ответ в теме &quot;Решебник&quot;</p>]]></description>
			<author><![CDATA[null@example.com (kunar80)]]></author>
			<pubDate>Wed, 29 Oct 2014 18:35:34 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3228#p3228</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3209#p3209</link>
			<description><![CDATA[<p><strong>kunar80</strong></p><p>для этого есть функция OpenFile, она универсальна, может открыть как файл так и папку</p><div class="codebox"><pre><code>OpenFile(&#039;c:\Films&#039;);</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (DriveSoft)]]></author>
			<pubDate>Wed, 29 Oct 2014 12:29:32 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3209#p3209</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3208#p3208</link>
			<description><![CDATA[<p>Спасибо.<br /></p><div class="codebox"><pre><code>procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
var
   sFolder: string;
begin
     sFolder := &#039;с:\&#039;;
     if SelectDirectory(&#039;Select folder&#039;, &#039;&#039;, sFolder) then
     begin
          ShowMessage(sFolder);
     end;
end;


begin

end.</code></pre></div><p>Открывает &quot;Обзор папок&quot;. А как дописать, чтобы по процедуре увидеть именно содержимое указанной папки?</p>]]></description>
			<author><![CDATA[null@example.com (kunar80)]]></author>
			<pubDate>Wed, 29 Oct 2014 12:12:20 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3208#p3208</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3207#p3207</link>
			<description><![CDATA[<p><strong>kunar80</strong></p><p>Я сделал для вас тестовый проект:</p>]]></description>
			<author><![CDATA[null@example.com (DriveSoft)]]></author>
			<pubDate>Wed, 29 Oct 2014 11:23:54 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3207#p3207</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3206#p3206</link>
			<description><![CDATA[<p>Дмитрий! Проект Вы видели и правили. Сейчас я просто пытаюсь на пустой форме экспериментировать.</p>]]></description>
			<author><![CDATA[null@example.com (kunar80)]]></author>
			<pubDate>Wed, 29 Oct 2014 11:20:55 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3206#p3206</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3205#p3205</link>
			<description><![CDATA[<p><strong>kunar80</strong><br />есть какая либо ошибка?<br />Функция SelectDirectory появилась только в версии 1.46</p><br /><p>Если у вас последняя версия и все равно не открывает, пожалуйста, пришлите проект на support@drive-software.com<br />посмотрю в чем дело.</p>]]></description>
			<author><![CDATA[null@example.com (DriveSoft)]]></author>
			<pubDate>Wed, 29 Oct 2014 11:18:27 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3205#p3205</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3204#p3204</link>
			<description><![CDATA[<p>Спасибо. Но папку всё равно не открывает.<br />Мне нужно, чтобы кнопка открывала для просмотра назначенную для неё папку, в котороую ложаться прикрепленные к проекту файлы.</p>]]></description>
			<author><![CDATA[null@example.com (kunar80)]]></author>
			<pubDate>Wed, 29 Oct 2014 11:12:32 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3204#p3204</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3203#p3203</link>
			<description><![CDATA[<p><strong>kunar80</strong><br />вы забыли один закрывающий end, должно быть так<br /></p><div class="codebox"><pre><code>procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);
var
   sFolder: string;
begin
     sFolder := &#039;c:\Documents and Settings&#039;;
     if SelectDirectory(&#039;Select folder&#039;, &#039;&#039;, sFolder) then
     begin
          ShowMessage(sFolder);
     end;
end;


begin

end.</code></pre></div><br /><p>обратите внимание на последние <br />begin</p><p>end.</p><br /><p>они всегда должны присутствовать в скрипте в самом низу, между ними вы также можете написать код, который будет исполнен сразу после старта программы.</p>]]></description>
			<author><![CDATA[null@example.com (DriveSoft)]]></author>
			<pubDate>Wed, 29 Oct 2014 11:06:14 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3203#p3203</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3202#p3202</link>
			<description><![CDATA[<div class="quotebox"><cite>DriveSoft wrote:</cite><blockquote><div class="quotebox"><blockquote><p>А если бы ещё можно было и начальную папку задавать...</p></blockquote></div><div class="codebox"><pre><code>procedure Form1_Button8_OnClick (Sender: string; var Cancel: boolean);
var
   sFolder: string;
begin
     sFolder := &#039;d:\Films&#039;;
     if SelectDirectory(&#039;Select folder&#039;, &#039;&#039;, sFolder) then
     begin
          ShowMessage(sFolder);
     end;
end;</code></pre></div></blockquote></div><p>А у меня это почему-то не работает <img src="https://myvisualdatabase.com/forum/img/smilies/sad.png" width="15" height="15" alt="sad" /> ???&nbsp; Есть пустая Form1 с одной кнопкой Button1. Скрипт записал так:<br /></p><div class="codebox"><pre><code>procedure Form1_Button1_OnClick (Sender: string; var Cancel: boolean);

var
   sFolder: string;

begin
     sFolder := &#039;c:\Documents and Settings&#039;;
     if SelectDirectory(&#039;Select folder&#039;, &#039;&#039;, sFolder) then
     begin
          ShowMessage(sFolder);
     end;
end.</code></pre></div><p>Упорно пишет: &#039;;&#039; expected at 12:4&nbsp; (12:4 - это после закрывающего &quot;end&quot;)<br />Кнопка не функционирует, указанную папку не открывает.</p>]]></description>
			<author><![CDATA[null@example.com (kunar80)]]></author>
			<pubDate>Wed, 29 Oct 2014 10:51:57 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3202#p3202</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3143#p3143</link>
			<description><![CDATA[<div class="quotebox"><blockquote><p>А если бы ещё можно было и начальную папку задавать...</p></blockquote></div><div class="codebox"><pre><code>procedure Form1_Button8_OnClick (Sender: string; var Cancel: boolean);
var
   sFolder: string;
begin
     sFolder := &#039;d:\Films&#039;;
     if SelectDirectory(&#039;Select folder&#039;, &#039;&#039;, sFolder) then
     begin
          ShowMessage(sFolder);
     end;
end;</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (DriveSoft)]]></author>
			<pubDate>Mon, 27 Oct 2014 10:53:18 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3143#p3143</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3142#p3142</link>
			<description><![CDATA[<div class="quotebox"><cite>DriveSoft wrote:</cite><blockquote><p><strong>alex842</strong><br />попробуйте без проверок, просто сделав так, думаю кавычки в любом случае не помешают<br /></p><div class="codebox"><pre><code>OpenFile(&#039;&quot;&#039; + file + &#039;&quot;&#039;,prog);</code></pre></div></blockquote></div><p>Действительно, так значительно проще. <img src="https://myvisualdatabase.com/forum/img/smilies/smile.png" width="15" height="15" alt="smile" /> </p><p>Кстати, заметил, что функция &quot;ExtractFilePath&quot; два раза в скриптах отображена: в разделе Other и Files.</p><div class="quotebox"><blockquote><p>2. Добавил новую функцию в бета версию 1.46, скачайте ее: <a href="https://www.dropbox.com/s/30ysr48sd8ca4">https://www.dropbox.com/s/30ysr48sd8ca4</a> … 6.zip?dl=0<br />SelectDirectory(const Caption: string; const Root: String; var Directory: string) : Boolean</p></blockquote></div><p>А если бы ещё можно было и начальную папку задавать... <img src="https://myvisualdatabase.com/forum/img/smilies/roll.png" width="15" height="15" alt="roll" /></p>]]></description>
			<author><![CDATA[null@example.com (alex842)]]></author>
			<pubDate>Mon, 27 Oct 2014 10:34:03 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3142#p3142</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3140#p3140</link>
			<description><![CDATA[<p><strong>alex842</strong><br />попробуйте без проверок, просто сделав так, думаю кавычки в любом случае не помешают<br /></p><div class="codebox"><pre><code>OpenFile(&#039;&quot;&#039; + file + &#039;&quot;&#039;,prog);</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (DriveSoft)]]></author>
			<pubDate>Mon, 27 Oct 2014 10:02:36 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3140#p3140</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3139#p3139</link>
			<description><![CDATA[<p><strong>alex842</strong></p><p>1.<br /></p><div class="codebox"><pre><code>OpenFile(&#039;D:\Films&#039;);</code></pre></div><br /><p>2. Добавил новую функцию в бета версию 1.46, скачайте ее: <a href="https://www.dropbox.com/s/30ysr48sd8ca4mx/setup%201.46.zip?dl=0">https://www.dropbox.com/s/30ysr48sd8ca4 … 6.zip?dl=0</a><br />SelectDirectory(const Caption: string; const Root: String; var Directory: string) : Boolean<br /></p><div class="codebox"><pre><code>procedure Form1_Button8_OnClick (Sender: string; var Cancel: boolean);
var
   sFolder: string;
begin
     if SelectDirectory(&#039;Select folder&#039;, &#039;&#039;, sFolder) then
     begin
          ShowMessage(sFolder);
     end;
end;</code></pre></div><br /><p>3. С этим пока сложней, постараюсь позже реализовать.</p>]]></description>
			<author><![CDATA[null@example.com (DriveSoft)]]></author>
			<pubDate>Mon, 27 Oct 2014 09:59:20 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3139#p3139</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3138#p3138</link>
			<description><![CDATA[<div class="quotebox"><cite>DriveSoft wrote:</cite><blockquote><p>Есть такой нюанс, если указывается, чем необходимо открыть данный файл, то сам файл является параметром для программы, которая открывает этот файл, а в параметрах к файлу пробелы допустимы, при условии если параметр в кавычках.</p><p>попробуйте так<br /></p><div class="codebox"><pre><code>var
prog,file:string;
begin
prog:= &#039;C:\Program Files (x86)\Windows NT\Accessories\wordpad.exe&#039;;
file:= &#039;&quot;D:\MailCloud\Программирование\My Visual Database\DistribCat\ReadMe.rtf&quot;&#039;;
OpenFile(file,prog);</code></pre></div></blockquote></div><p>Проверил ещё раз это решение. Оно работает, если путь к файлу точно известен, а если надо использовать команды ExtractFilePath или ExtractFileDir, то ошибка опять появляется. Для того, чтобы этого избежать, я ввел проверку на наличие пробелов в пути. Финальный вариант процедуры такой:</p><div class="codebox"><pre><code>procedure FrMain_Button2_OnClick (Sender: string; var Cancel: boolean);
var
  prog,file,path:string;
begin
  path:= ExtractFilePath(Application.ExeName); //получаем путь к папке
  prog:=path+&#039;SoloPad.exe&#039;; //получаем путь к программе, которая находится в папке с исполняемым файлом. 
  If Pos(&#039; &#039;, path) Then //проверяем наличие пробелов в пути
    file:= &#039;&quot;&#039;+path+&#039;ReadMe.rtf&quot;&#039; // если есть, то заключаем в кавычки
  else
    file:= path+&#039;ReadMe.rtf&#039;; // если нет, то ничего не делаем. 

  OpenFile(file,prog);
end;</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (alex842)]]></author>
			<pubDate>Mon, 27 Oct 2014 09:28:13 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3138#p3138</guid>
		</item>
		<item>
			<title><![CDATA[Re: Открыть файл с пробелами в адресе]]></title>
			<link>https://myvisualdatabase.com/forum/viewtopic.php?pid=3133#p3133</link>
			<description><![CDATA[<p>Подскажите, пожалуйста, а как сделать следующее:<br />1) Открыть не файл, а папку.<br />2) Вызвать диалог открытия папки.<br />3) Удалить папку с подпапками.</p>]]></description>
			<author><![CDATA[null@example.com (alex842)]]></author>
			<pubDate>Mon, 27 Oct 2014 08:01:01 +0000</pubDate>
			<guid>https://myvisualdatabase.com/forum/viewtopic.php?pid=3133#p3133</guid>
		</item>
	</channel>
</rss>
