Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как узнать имя каталога [D7, XP]


b@v ©   (2009-02-18 14:15:00) 

Вообщем суть такая. Нужно создать каталог, но если каталог с таким именем уже существует, то просто проигнорировать и не создавать, а если такого каталога нету, то создать его. Использую MkDir, т.е.

MkDir(c:\Proba\Zakaz\' + ADODataSet1['Firma']); , т.е. создаю каталог с именем ADODataSet1['Firma'] (Например - Tovar)

Если нет каталога то и нет проблем, создает, а если есть, то ...... косяк


Anatoly Podgoretsky   (2009-03-02 10:59:00) [1]


> забылпароль   (02.03.09 10:46) [14]

Тут Дельфи даже и не пахнет, к чему бы это?


Palladin   (2009-03-02 10:48:00) [2]


> забылпароль   (02.03.09 10:46) [14]

ForceDirectories + F1


забылпароль   (2009-03-02 10:46:00) [3]

зачем так сложно?
cmd
C:\Documents and Settings\Администратор>mkdir /?
Создание каталога.

MKDIR [диск:]путь
MD [диск:]путь

Изменение команды MKDIR при включении расширенной обработки команд:

Команда MKDIR создает при необходимости все промежуточные каталоги в пути.
Например, если \a не существует, то:

   mkdir \a\b\c\d

приводит к тому же результату, что и:

   mkdir \a
   chdir \a
   mkdir b
   chdir b
   mkdir c
   chdir c
   mkdir d

например, мой бэкап бд из шедулера. батник

@echo off
REM  ---------------------- Start
set NameFile=*.bak
set NewFolder=%Date%
set SrcFld=d:\BackUp
set DstFld=\\192.168.0.32\Volume_1\backup

REM ------ Try creating folder
mkdir %DstFld%\%NewFolder%

REM ------------- Copy files ..
copy %SrcFld%\%NameFile% %DstFld%\%NewFolder%\%NameFile%
if errorlevel 1 goto exitError

REM -------------- pack files ...
"C:\Program Files\7-Zip\7z.exe" a -tzip %DstFld%\%NewFolder%.zip %DstFld%\%NewFolder%\%NameFile% -mx6
if errorlevel 1 goto exitError

REM -------------- Try erase files and folder
erase /Q %DstFld%\%NewFolder%\%NameFile%
if errorlevel 1 goto exitError

rmdir %DstFld%\%NewFolder%
if errorlevel 1 goto exitError

erase /Q %SrcFld%\%NameFile%
if errorlevel 1 goto exitError

REM -------------- All ok!
Exit /b 0

:exitError
REM -------------- Error!
Exit /b 1


brother   (2009-03-02 05:38:00) [4]

делай так:
if not directoryexists( 'c:\Proba\Zakaz\' + ADODataSet1['Firma']) then MkDir( 'c:\Proba\Zakaz\' + ADODataSet1['Firma']);


Юрий Зотов   (2009-02-19 15:47:00) [5]

> Как узнать имя каталога

Все неправы, кроме Анатолия. Правильный ответ на заданный вопрос выглядит так:

function GetDirName(Dir: string): string;
begin
 Result := Dir;
end;


Yellow_D   (2009-02-19 15:42:00) [6]


> Гад какой то.


:)

А может просто так вопрос был задан?
Но все же, для него, батеньки :)

procedure TForm1.Button1Click(Sender: TObject);
begin
 if directoryexists('C:\1') then showmessage('Каталог существует') else
 showmessage('Каталог не существует');
end;


Anatoly Podgoretsky   (2009-02-19 15:36:00) [7]

> Dennis I. Komarov  (19.02.2009 9:35:07)  [7]

Гад какой то.


Palladin   (2009-02-19 10:59:00) [8]

И что собственно? Чего сказать то хотел?


MkDir   (2009-02-19 09:49:00) [9]

{$I-}
    MkDir(c:\Proba\Zakaz\' + ADODataSet1['Firma']);
{$I+}


Dennis I. Komarov   (2009-02-19 09:35:00) [10]


> Anatoly Podgoretsky ©   (18.02.09 14:29) [6]
> Удалено модератором

Это "самоубийство"? :)


Anatoly Podgoretsky   (2009-02-18 14:29:00) [11]

> b@v  (18.02.2009 14:24:03)  [3]

Ну и где тут узнавание имени каталога?


Anatoly Podgoretsky   (2009-02-18 14:29:00) [12]

Удалено модератором


Anatoly Podgoretsky   (2009-02-18 14:28:00) [13]

> b@v  (18.02.2009 14:15:00)  [0]

CreateDir попробуй.
Имя каталога тебе не надо узнавать, оно тебе известно еще до вызова, не может MkDir работать с неизвестными именами.


Palladin   (2009-02-18 14:24:00) [14]

ForceDirectory


b@v   (2009-02-18 14:24:00) [15]


> clickmaker ©  

Спасибо, действительно, ведь раньше пользовался :-)


clickmaker   (2009-02-18 14:18:00) [16]

DirectoryExists


Наверх

Титульная страница Поиск, карта сайта Написать письмо