Текущий архив: 2005.03.27;
Скачать: CL | DM;
ВнизЗапись данных на диск не создавая файла Найти похожие ветки
← →
Stanislav © (2005-02-10 12:03) [0]Возможно ли это сделать ? т.е. в определенный кластер записать информацию, а потом зная куда записывалась эта инф. ее считать ?
← →
Reindeer Moss Eater © (2005-02-10 12:06) [1]Запись данных на диск не создавая файла
Берем файл и стираем его.
Данные при этом на диск пишутся, но никакого файла не создается.
← →
VMcL © (2005-02-10 12:06) [2]Можно, но не нужно.
← →
Александр Иванов © (2005-02-10 12:06) [3]Stanislav © (10.02.05 12:03)
MS SQL server может даже больше, он работает даже с неформатированными разделами диска.
← →
Stanislav © (2005-02-10 12:09) [4]Reindeer Moss Eater © (10.02.05 12:06) [1]
А как узнать куда записались данные ?
← →
Stanislav © (2005-02-10 15:03) [5]А кто знает как это сделать ?
← →
Игорь Шевченко © (2005-02-10 16:07) [6]Я знаю.
← →
Marser © (2005-02-10 16:20) [7]
> Я знаю.
Я тоже :-)
Но не в Windows :o)
← →
Игорь Шевченко © (2005-02-10 16:29) [8]Но у меня встречный вопрос - в связи с чем возникла такая задача?
← →
Fay © (2005-02-10 18:56) [9]Это ?
CreateFile
...
...
Disk Devices
Volume handles may be opened as noncached at the discretion of the file system, even when the noncached option is not specified with CreateFile. You should assume that all Microsoft file systems open volume handles as noncached. The restrictions on noncached I/O for files apply to volumes as well.
A file system may or may not require buffer alignment even though the data is noncached. However, if the noncached option is specified when opening a volume, buffer alignment is enforced regardless of the file system on the volume. It is recommended on all file systems that you open volume handles as noncached and follow the noncached I/O restrictions.
Windows NT/2000/XP: You can use the CreateFile function to open a disk drive or a partition on a disk drive. The function returns a handle to the disk device; that handle can be used with the DeviceIOControl function. The following requirements must be met in order for such a call to succeed:
The caller must have administrative privileges for the operation to succeed on a hard disk drive.
The lpFileName string should be of the form \\.\PHYSICALDRIVEx to open the hard disk x. Hard disk numbers start at zero. For example:
String Meaning
\\.\PHYSICALDRIVE2 Obtains a handle to the third physical drive on the user"s computer.
For an example showing how to open a physical drive, see Calling DeviceIoControl on Windows NT/2000.
The lpFileName string should be \\.\x: to open a floppy drive x or a partition x on a hard disk. For example:
String Meaning
\\.\A: Obtains a handle to drive A on the user"s computer.
\\.\C: Obtains a handle to drive C on the user"s computer.
There is no trailing backslash in a drive name. The string "\\.\c:\" refers to the root directory of drive C.
On Windows 2000 or later, you can also open a volume by referring to its unique volume name. In this case also, there should be no trailing backslash on the unique volume name.
Note that all I/O buffers should be sector aligned (aligned on addresses in memory that are integer multiples of the volume"s sector size), even if the disk device is opened without the FILE_FLAG_NO_BUFFERING flag. Depending the disk, this requirement may not be enforced.
Windows 95/98/Me: This technique does not work for opening a logical drive. Specifying a string in this form causes CreateFile to return an error.
The dwCreationDisposition parameter must have the OPEN_EXISTING value.
When opening a floppy disk or a partition on a hard disk, you must set the FILE_SHARE_WRITE flag in the dwShareMode parameter
...
...
← →
Marser © (2005-02-10 19:06) [10]
> Fay © (10.02.05 18:56) [9] [Новое
>сообщение][Ответить]
>Это ?
>
> CreateFile
Это понятно. Но тут же с файлом работать надо! %-)
← →
Kerk © (2005-02-10 19:08) [11]Marser © (10.02.05 19:06) [10]
Это понятно. Но тут же с файлом работать надо! %-)
RTFM
← →
Fay © (2005-02-10 19:16) [12]2 Marser © (10.02.05 19:06) [10]
В смысле?
← →
Eraser © (2005-02-10 21:34) [13]Александр Иванов ©
MS SQL server может даже больше, он работает даже с неформатированными разделами диска.
На то он и M$ ))
← →
NikNet © (2005-02-10 21:39) [14]Пришли мне свои MAIL я тебе свои исходник скину
на котором не только файл можно записать даже
свой программы сделать ТИПА: DiskEditor,RestoreFile,HDD,UnFormat
Там около 70 функций!
когда будешь посылать
напиши зачем шлешь писмо
ато я не каждый день сижу в ИНЕТЕ!
;)
← →
NikNet © (2005-02-10 21:40) [15]Удалено модератором
Примечание: Дубль
← →
Игорь Шевченко © (2005-02-10 23:05) [16]
> Там около 70 функций!
Достаточно всего 5, чем у тебя еще 65 занимаются ?
← →
NikNet © (2005-02-10 23:10) [17]Там около 70 функций!
Достаточно всего 5, чем у тебя еще 65 занимаются ?
Остальные сделанные мною например такие!
Возврощает : HDD по Log Dsk
Возврощает : LogDsk(D,E, ...) по HDD
Возврощает : Полный адресс(кластер) файла по имени
...
← →
NikNet © (2005-02-10 23:11) [18]Кстати мои Mail Arazel@yandex.ru
также заглени на мои сайт ТАМ ТОЖЕ НАЙДЕЕШЬ МНОГО ИНТЕРЕСНОГО!
← →
NikNet © (2005-02-10 23:11) [19]Кстати мои Mail Arazel@yandex.ru
также заглени на мои сайт ТАМ ТОЖЕ НАЙДЕЕШЬ МНОГО ИНТЕРЕСНОГО!
Arazel.narod.ru
← →
Kerk © (2005-02-10 23:15) [20]NikNet © (10.02.05 23:11) [19]
ну ты мессия прям :)
← →
Игорь Шевченко © (2005-02-11 01:15) [21]
> также заглени на мои сайт ТАМ ТОЖЕ НАЙДЕЕШЬ МНОГО ИНТЕРЕСНОГО!
Спасибо, у меня свой есть.
> Возврощает : LogDsk(D,E, ...) по HDD
А если не секрет, как сделал ?
← →
NikNet © (2005-02-11 01:22) [22]Диски чередуются таким образом
Дапустим у нас есть четыре диска и два HDD
так вот так и делается!
HDD1 C Part1
HDD2 D Part1
HDD1 E Part2
HDD2 F Part2
...
← →
Игорь Шевченко © (2005-02-11 01:29) [23]NikNet © (11.02.05 01:22) [22]
Тут такой момент - у меня первый раздел на первом диске имеет букву I, например, а второй Е. Так что, боюсь, твой метод неверно определит.
Мой совет, сходи на http://www.schevchenko.net.ru/, есть там такая программа DeviceIoControl (с исходниками), вот она более корректно определяет, какому разделу диска какая буква назначена.
← →
NikNet © (2005-02-11 02:07) [24]Function THDD.NumOfDsk:Byte;
Var
d,i,j,s:Byte;
NumHDD: BYTE absolute $0:$0475;
Begin
d:=0;
For i:=0 to NumHDD-1 do
For j:=1 to 26 do
Begin
S:=GetSecLogDsk($80+i,j);
IF (S=0)and(j=1) Then
Begin
d:=d+1
end
else
Begin
IF (S<>0)and(j<>1) Then
d:=d+1;
end;
end;
NumOfDsk:=D;
end;
← →
NikNet © (2005-02-11 02:11) [25]Ты не знайшь как мне перехватить глобальнно API!
Блин все сделал а это не сделал!
Хотел перечислить все процессы но это говорят не сойдет
пробывал через ZwCreateRezum... что -то не пашет!
что делать не знаю?
← →
NikNet © (2005-02-11 02:57) [26]Я посмотрел твой проги Очень хорошие!
Но если вдруг задумаешь серьёзна работать с дисками
обращайся!
У меня целых четыре модуля для работы с дисками!
← →
Piter © (2005-02-11 03:36) [27]NikNet, успокойся :)))))
А то у Игоря, наверняка, улыбка с лица не сползает уже полчаса :)
← →
Kerk © (2005-02-11 05:55) [28]Piter © (11.02.05 3:36) [27]
и мне похоже.. на весь день хорошее настроение обеспечено.. :))) веселая ветка.
← →
Fay © (2005-02-11 09:50) [29]2 Piter, Kerk
Ага. Мне особенно понравилось "DeviceIoControl (с исходниками)" 8)
← →
xShadow © (2005-02-11 09:58) [30]
>to Kerk ©
Как тебе Ring0 за 7 баксов?
← →
Kerk © (2005-02-11 10:33) [31]xShadow © (11.02.05 9:58) [30]
Как тебе Ring0 за 7 баксов?
не понял
← →
Fay © (2005-02-11 10:37) [32]И я не понял. Он теперь отдельно продяётся ? 8)
← →
xShadow © (2005-02-11 10:46) [33]
> Kerk ©
www.Arazel.narod.ru а зайди посмотри.
← →
WondeRu © (2005-02-11 10:46) [34]Fay © (11.02.05 9:50) [29]
Ага. Мне особенно понравилось "DeviceIoControl (с исходниками)" 8)
значит сию функцию в винде ИШ сделал???!!!)))
← →
Kerk © (2005-02-11 10:52) [35]xShadow © (11.02.05 10:46) [33]
может мне стоит за $5 продавать? :D
← →
Игорь Шевченко © (2005-02-11 11:26) [36]WondeRu © (11.02.05 10:46) [34]
> значит сию функцию в винде ИШ сделал?
Иногда подписываюсь полностью - Корней Чуковский. Иногда сокращенно - Корнейчук.
← →
Stanislav © (2005-02-11 11:26) [37]Спасибо. Буду разбираться.
← →
WondeRu © (2005-02-11 12:12) [38]Игорь Шевченко © (11.02.05 11:26) [36]
Иногда подписываюсь полностью - Корней Чуковский. Иногда сокращенно - Корнейчук.
уж извините, я вообще с Вами похож ;) у моего отца фамилия Шевченко, а зовут меня Игорь) Эт так, к слову :))
← →
BiN © (2005-02-11 12:21) [39]WondeRu © (11.02.05 12:12) [38]
уж извините, я вообще с Вами похож ;) у моего отца фамилия Шевченко...
:)
>>Игорь Шевченко ©
Игорь, ты в Самаре случаем в молодые годы не был? :))
← →
Игорь Шевченко © (2005-02-11 12:35) [40]BiN © (11.02.05 12:21) [39]
В 1997 году :)
ЗЫ: Завязываем offtopic, ок ?
Страницы: 1 2 вся ветка
Текущий архив: 2005.03.27;
Скачать: CL | DM;
Память: 0.54 MB
Время: 0.042 c