![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
проверка готовности диска А и копирование на дискету [D7, XP]
Sw © (2009-09-01 09:18:00)
function IsDriveReady(const Drive: char): Boolean;
var
DrvNum: byte;
EMode: Word;
begin
result := true;
DrvNum := ord(Drive);
if DrvNum >= ord('a') then
dec(DrvNum, $20);
EMode := SetErrorMode(SEM_FAILCRITICALERRORS);
try
while DiskSize(DrvNum - $40) = -1 do
begin
case (Application.MessageBox('Диск не готов...' + chr(13) + chr(10) +
'Повторить?', PChar('Диск ' + UpperCase(Drive)), mb_OKCANCEL +
mb_iconexclamation {IconQuestion})) of
IDOK:IsDriveReady(Drive);
IDCANCEL: begin Result := false; Break; end;
end;
end;
finally
SetErrorMode(EMode);
end;
end;
//процедура копирования файлов//
function WindowsCopyFile(FromFile, ToDir : string) : boolean;
var
F: TShFileOpStruct;
begin
F.Wnd := 0; F.wFunc := FO_COPY;
FromFile:=FromFile+#0; F.pFrom:=pchar(FromFile);
ToDir:=ToDir+#0; F.pTo:=pchar(ToDir);
F.fFlags := FOF_ALLOWUNDO or FOF_NOCONFIRMATION;
result:=ShFileOperation(F) = 0;
end;
.....................................................
if IsDriveReady(device) then
if WindowsCopyFile(sFileName,export_folder) then
Application.MessageBox('Данные выгружены успешно', 'Окно сообщений', MB_ICONINFORMATION);
.....................................................
Помогите, пожалуйста, разобаться. Если дискета установлена, то все правильно отрабатывает. А если диск не обнаружен ('Диск не готов...' + 'Повторить?',) -> вставляем дискету и нажимаем Повторить....выдает сообщение: "Данные выгружены успешно' , но ничего на дискету не выгружает.
Anatoly Podgoretsky (2009-09-01 11:57:00) [21]> clickmaker (01.09.2009 11:45:02) [2]
У меня однажды Виндоус деинсталировался :-)
clickmaker (2009-09-01 11:45:00) [22]> ой что былоооо
а что было? диск почистился? )
Virgo_Style (2009-09-01 10:56:00) [23]
> FromFile:=FromFile+#0
Тебе хорошо, у тебя копирование, а когда я при удалении второй нолик добавить забыл - ой что былоооо...