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

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Открыть сетевую папку на другом компе с помощью Delphi 7 (http://forum.oszone.net/showthread.php?t=108111)

Srednas 30-05-2008 16:03 814602

Открыть сетевую папку на другом компе с помощью Delphi 7
 
Вложений: 1
Здравствуйте!
Ситуация:
слелал (Delphi 7) на форме кнопочку открыть папку, на клик:

procedure TForm1.Button2Click(Sender: TObject);
begin
ShellExecute(handle, Nil, 'D:\user\buffer', Nil, Nil, SW_SHOWNORMAL);
end;

Если просто кликнуть на кнопку то все нормально открывается, но если заходить на комп ч-з РДП соединение, и нажать на кнопку, вылезает ошибка
"windows не удалось найти 'idlist,:252:5804,D:\user\buffer'. Проверьте, что имя было введено правильно, и повторите попытку. Чтобы выполнить поиск файла, нажмите Пуск, и выберите Найти."

Вопрос:
Почему возникает такая ощибка и как её исправить?

Admiral 30-05-2008 16:13 814616

Srednas, потому что используется абсолютный путь, который на удалённой машине может и вовсе не существовать. Если нужно переменные удалённой машины, то нужно писать клиент-сервер приложение, что б удалённый файл пересылать. Или использовать относительные пути и что б нужный файл был не далеко от ЕХЕ.

Srednas 03-06-2008 15:05 817392

А что такое "Относительные пути"??? И как и х сделать?

Admiral 03-06-2008 15:41 817423

Допустим скомпилированный файл Project1.exe в папке D:\user, относительный путь к интересующей папки будет .\buffer или buffer
Так же возможно используя функцию определения местоположения ЕХЕ
Код:

ExtractFilePath(ParamStr(0));
или
Код:

AppPath: String;
GetDir(AppPath, 0);

приделать этот относительный путь к этому пути и получить абсолютный путь к различным вариантам запуска проги.


Время: 01:56.

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