Сейчас на форуме: bartolomeo, -Sanchez- (+4 невидимых)

 eXeL@B —› Вопросы новичков —› Как правильно описать функцию в Delphi из внешней библиотеки?
Посл.ответ Сообщение

Ранг: 43.0 (посетитель)
Активность: 0.030
Статус: Участник

Создано: 04 апреля 2006 11:20
· Личное сообщение · #1

Имеется функция:
WTSEnumerateServers (находится в wtsapi32.dll)
в MSDN про нее пишут:

The WTSEnumerateServers function returns a list of all terminal servers within the specified Windows NT domain.
BOOL WTSEnumerateServers(
LPTSTR pDomainName,
DWORD Reserved,
DWORD Version,
PWTS_SERVER_INFO* ppServerInfo,
DWORD* pCount
);

-------------
WTS_SERVER_INFO

The WTS_SERVER_INFO structure contains information about a specific Terminal Services server.

typedef struct _WTS_SERVER_INFO {
LPTSTR pServerName;
} WTS_SERVER_INFO,
*PWTS_SERVER_INFO;

Подскажите пожалуйста как грамотно описать функцию и структуру в Дельфи, чтоб все работало...




Ранг: 793.4 (! !), 568thx
Активность: 0.740
Статус: Участник
Шаман

Создано: 04 апреля 2006 11:43 · Поправил: PE_Kill
· Личное сообщение · #2

Думаю что то типа такого

type
PWTS_SERVER_INFO = ^WTS_SERVER_INFO;
_WTS_SERVER_INFO = packed record
pServerName:LPTSTR;
end;
WTS_SERVER_INFO = _WTS_SERVER_INFO;

function WTSEnumerateServers( pDomainName: LPTSTR; Reserved: DWORD; Version: DWORD; ppServerInfo: PWTS_SERVER_INFO; pCount: PDWORD):BOOLEAN; stdcall; external 'wtsapi32.dll';


Вот только не пойму ppServerInfo это PWTS_SERVER_INFO или указатель на указатаель на PWTS_SERVER_INFO

-----
Yann Tiersen best and do not fuck




Ранг: 43.0 (посетитель)
Активность: 0.030
Статус: Участник

Создано: 04 апреля 2006 11:48 · Поправил: nikitosk
· Личное сообщение · #3

PE_Kill Спасибо тебе...
там написано, что указатель.


 eXeL@B —› Вопросы новичков —› Как правильно описать функцию в Delphi из внешней библиотеки?
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати