Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 26, 2012 14:12:02

SergMare
От:
Зарегистрирован: 2012-02-26
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Cython и WinApi

Собственно код

cdef extern from "Windows.h":

ctypedef unsigned LPCTSTR
ctypedef unsigned LPTSTR
ctypedef unsigned DWORD
ctypedef unsigned LPDWORD
ctypedef unsigned BOOL
cdef LPCTSTR lpRootPathName
cdef LPTSTR lpVolumeNameBuffer
cdef DWORD nVolumeNameSize
cdef LPDWORD lpVolumeSerialNumber
cdef LPDWORD lpMaximumComponentLength
cdef LPDWORD lpFileSystemFlags
cdef LPTSTR lpFileSystemNameBuffer
cdef DWORD nFileSystemNameSize


cdef extern BOOL GetVolumeInformation(
lpRootPathName,
lpVolumeNameBuffer,
nVolumeNameSize,
lpVolumeSerialNumber,
lpMaximumComponentLength,
lpFileSystemFlags,
lpFileSystemNameBuffer,
nFileSystemNameSize
)

def get_volume_info(met):

cdef LPTSTR VolumeNameBuffer
cdef LPDWORD VolumeSerialNumber
cdef LPDWORD MaximumComponentLength
cdef LPDWORD FileSystemFlags
cdef LPTSTR FileSystemNameBuffer


ret = GetVolumeInformation('C:\\', VolumeNameBuffer, 1024, VolumeSerialNumber, MaximumComponentLength,FileSystemFlags, FileSystemNameBuffer, 1024)
if ret:

print VolumeSerialNumber
else: print 'Error'
При проверке печатает Error.
Что здесь сделано не так? Помогите. Cython только начал изучать, примеры вызова функции winapi нагуглить вообще не удалось.



Офлайн

#2 Фев. 26, 2012 22:42:52

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version