<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=131033&amp;view=findpost&amp;p=1001412</guid>
        <pubDate>Tue, 31 Jan 2006 09:38:10 +0000</pubDate>
        <title>Получение полного и короткого пути</title>
        <link>https://forum.sources.ru/index.php?showtopic=131033&amp;view=findpost&amp;p=1001412</link>
        <description><![CDATA[Rouse_: <strong class='tag-b'>P.O.D</strong>, круто :)<br>
Но вот так, думаю, будет попроще:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">unit Unit1;</div><div class="code_line">&nbsp;</div><div class="code_line">interface</div><div class="code_line">&nbsp;</div><div class="code_line">uses</div><div class="code_line">&nbsp;&nbsp;Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,</div><div class="code_line">&nbsp;&nbsp;Dialogs, StdCtrls;</div><div class="code_line">&nbsp;</div><div class="code_line">type</div><div class="code_line">&nbsp;&nbsp;TForm1 = class(TForm)</div><div class="code_line">&nbsp;&nbsp; &nbsp;Button1: TButton;</div><div class="code_line">&nbsp;&nbsp; &nbsp;procedure Button1Click(Sender: TObject);</div><div class="code_line">&nbsp;&nbsp;end;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp;function GetLongPathNameA(lpszShortPath, lpszLongPath: PChar;</div><div class="code_line">&nbsp;&nbsp; &nbsp;cchBuffer: DWORD): DWORD; stdcall; external kernel32;</div><div class="code_line">&nbsp;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;Form1: TForm1;</div><div class="code_line">&nbsp;</div><div class="code_line">implementation</div><div class="code_line">&nbsp;</div><div class="code_line">{$R *.dfm}</div><div class="code_line">&nbsp;</div><div class="code_line">function ExpandFileName(Path: String): String;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;SetLength(Result, MAX_PATH);</div><div class="code_line">&nbsp;&nbsp;if GetLongPathNameA(PChar(Path), @Result[1], MAX_PATH) = 0 then</div><div class="code_line">&nbsp;&nbsp; &nbsp;RaiseLastOSError;</div><div class="code_line">&nbsp;&nbsp;Result := Trim(Result);</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TForm1.Button1Click(Sender: TObject);</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;S: String;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;// Получаем полное имя</div><div class="code_line">&nbsp;&nbsp;S := ExpandFileName(&#39;C:\DOCUME~1\&#39;);</div><div class="code_line">&nbsp;&nbsp;ShowMessage(S);</div><div class="code_line">&nbsp;&nbsp;// Получаем урезанное имя</div><div class="code_line">&nbsp;&nbsp;GetShortPathName(PChar(S), PChar(S), MAX_PATH);</div><div class="code_line">&nbsp;&nbsp;ShowMessage(S);</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">end.</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script>]]></description>
        <author>Rouse_</author>
        <category>Системные функции, WinAPI, работа с железом</category>
      </item>
	
      </channel>
      </rss>
	