Форум: "Основная";
Текущий архив: 2019.03.10;
Скачать: [xml.tar.bz2];
ВнизПеревести с C++ Найти похожие ветки
← →
brother © (2013-02-14 19:35) [0]Помогите перевести структуру на делфи:
http://msdn.microsoft.com/en-us/library/windows/desktop/bb968801%28v=vs.85%29.aspx
Пробую так, но кажись не верно:DeviceInfo: Record
DeviceType: Word; DeviceNumber, PartitionNumber: Longint;
End;
← →
Медвежонок Пятачок © (2013-02-14 20:01) [1]лонгинт - со знаком. А в оригинале без (ULONG )
dword, longword, cardinal ....
← →
Rouse_ © (2013-02-14 20:13) [2]Забирай: http://rouse.drkb.ru/winapi.php#saferemove
← →
brother © (2013-02-14 20:27) [3]ругается на:
ULONG_PTR
д7
← →
Rouse_ © (2013-02-14 20:35) [4]DWORD
← →
Игорь Шевченко © (2013-02-14 20:36) [5]unit JwaWinIoctl;
//
// IOCTL_STORAGE_GET_DEVICE_NUMBER
//
// input - none
//
// output - STORAGE_DEVICE_NUMBER structure
// The values in the STORAGE_DEVICE_NUMBER structure are guaranteed
// to remain unchanged until the system is rebooted. They are not
// guaranteed to be persistant across boots.
//
type
PSTORAGE_DEVICE_NUMBER = ^STORAGE_DEVICE_NUMBER;
{$EXTERNALSYM PSTORAGE_DEVICE_NUMBER}
_STORAGE_DEVICE_NUMBER = record
//
// The FILE_DEVICE_XXX type for this device.
//
DeviceType: DEVICE_TYPE;
//
// The number of this device
//
DeviceNumber: DWORD;
//
// If the device is partitionable, the partition number of the device.
// Otherwise -1
//
PartitionNumber: DWORD;
end;
{$EXTERNALSYM _STORAGE_DEVICE_NUMBER}
STORAGE_DEVICE_NUMBER = _STORAGE_DEVICE_NUMBER;
{$EXTERNALSYM STORAGE_DEVICE_NUMBER}
TStorageDeviceNumber = STORAGE_DEVICE_NUMBER;
PStorageDeviceNumber = PSTORAGE_DEVICE_NUMBER;
← →
Rouse_ © (2013-02-14 20:39) [6]
> Игорь Шевченко © (14.02.13 20:36) [5]
У него с DEVICE_TYPE проблемы изначально...
← →
Игорь Шевченко © (2013-02-14 21:00) [7]Rouse_ © (14.02.13 20:39) [6]
Секретные ?
← →
Rouse_ © (2013-02-14 21:23) [8]
> Игорь Шевченко © (14.02.13 21:00) [7]
Ну ты разве сам размер параметра не видишь им объявленный? :)
← →
Игорь Шевченко © (2013-02-14 21:33) [9]JwaWinIoCtl.pas
//
// Define the various device type values. Note that values used by Microsoft
// Corporation are in the range 0-32767, and 32768-65535 are reserved for use
// by customers.
//
type
DEVICE_TYPE = DWORD;
ddk\devioctl.h//
// Define the various device type values. Note that values used by Microsoft
// Corporation are in the range 0-32767, and 32768-65535 are reserved for use
// by customers.
//
#define DEVICE_TYPE ULONG
Я не вижу проблемы.
← →
Rouse_ © (2013-02-14 21:51) [10]
> Игорь Шевченко © (14.02.13 21:33) [9]
Дык я еще выше описал тип параметра :)
Поэтому и сказал что нет смысла приводить кусок описания (благо его я тоже дал), без проблемного участка кода :)
← →
Игорь Шевченко © (2013-02-14 21:56) [11]Rouse_ © (14.02.13 21:51) [10]
Ничего не понял, но ладно
← →
robt (2013-02-14 22:30) [12]
> Я не вижу проблемы.
> in the range 0-32767, and 32768-65535
это какбэ WORD а не DWORD
← →
DVM © (2013-02-14 22:41) [13]
> brother © (14.02.13 20:27) [3]
> ругается на: ULONG_PTR
> д7
>
> <Цитата>
> Rouse_ © (14.02.13 20:35) [4]
> DWORD
ULONG_PTR это не всегда DWORD, это
typedef unsigned __int3264 ULONG_PTR;
← →
Игорь Шевченко © (2013-02-14 23:37) [14]robt (14.02.13 22:30) [12]
> это какбэ WORD а не DWORD
Оставим этот нюанс на совести Microsoft, типы в DDK и в трансляции Jedi совпадают, больше от них ничего не требуется.
← →
brother © (2013-02-15 04:45) [15]спасибо
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2019.03.10;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.001 c