- Код: Выделить всё
Dim BitmapFile As Long
Dim Result As Long
Dim FH As BITMAPFILEHEADER
Dim ReadBytes As Long
BitmapFile = CreateFile("c:\1.bmp", GENERIC_READ, FILE_SHARE_READ, ByVal 0&, OPEN_EXISTING, 0, 0)
Result = ReadFile(BitmapFile, VarPtr(FH), Len(FH), ReadBytes, ByVal 0&)
Form1.Print FH.bfSize
CloseHandle BitmapFile
Интересно то, что там наверно работало, а VB не работает
Должен считаться заголовок bmp-файла, примерно такой (14 байт):
42 4D 36 00 03 00 00 00 00 00 36 00 00 00
Первая переменная типа BITMAPFILEHEADER содержит правильное значение 19778, а вот дальше всё неправильно - 3 0 54 и 0
С чем это может быть связано? Может глючат пользовательские типы данных!?
А самое интересное, что в C++Builder получается тоже самое, да и ещё sizeof выдаёт 16 байт вместо 14!