Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.10;
Скачать: CL | DM;

Вниз

Как узнать принадлежит-ли компьютер к какому-либо домену?   Найти похожие ветки 

 
needle   (2004-09-10 09:36) [0]

ась? важен сам факт принадлежности к домену, для определения возможности изменения некоторых настроек, в частности logontype в xp.


 
UNIVERSAL   (2004-09-10 09:47) [1]

Не это случаем GetComputerNameEx?


 
Игорь Шевченко ©   (2004-09-10 09:59) [2]

NetGetJoinInformation ?


 
needle   (2004-09-10 10:12) [3]

-> Игорь Шевченко
фенкс со мач. Именно то что нужно.
NET_API_STATUS NetGetJoinInformation(
 LPCWSTR lpServer,
 LPWSTR *lpNameBuffer,
 PNETSETUP_JOIN_STATUS BufferType
);
typedef enum _NETSETUP_JOIN_STATUS {

   NetSetupUnknownStatus = 0,
   NetSetupUnjoined,
   NetSetupWorkgroupName,
   NetSetupDomainName

} NETSETUP_JOIN_STATUS, *PNETSETUP_JOIN_STATUS;


 
Игорь Шевченко ©   (2004-09-10 11:07) [4]

needle   (10.09.04 10:12) [3]

И не забыть при успешном вызове сделать NetApiBufferFree :)


 
needle   (2004-09-10 11:30) [5]

если кому интересно - сваял модуль:

unit uNetApi;

interface
uses
 Windows,Classes;
 
function IsJoinedToDomain:Boolean;

implementation
type
NETSETUP_JOIN_STATUS=(NetSetupUnknownStatus,NetSetupUnjoined,NetSetupWorkgroupName,NetSetupDomainName);
const
netapi32 = "netapi32.dll";
var
 NetAPI32Lib: THandle;
 NetGetJoinInformation: function(lpServer:PWideChar;var lpNameBuffer:PWideChar;var BufferType:NETSETUP_JOIN_STATUS):Integer;stdcall;
 NetApiBufferFree: function(Buffer:PWideChar):Integer;stdcall;

function LoadNetApi32Dll:Boolean;
begin
 Result:=false;
 try
   NetAPI32Lib := LoadLibrary(netapi32);
   if NetAPI32Lib > 0 then
   begin
     NetGetJoinInformation := GetProcAddress(NetAPI32Lib,"NetGetJoinInformation");
     NetApiBufferFree := GetProcAddress(NetAPI32Lib,"NetApiBufferFree");
     Result:=true;
   end;
 except
 end;
end;

procedure UnLoadNetApi32Dll;
begin
 if NetAPI32Lib>0 then
   FreeLibrary(NetAPI32Lib);
end;

function IsJoinedToDomain:Boolean;
var
buf:PWideChar;
buftype:NETSETUP_JOIN_STATUS;
begin
 Result:=false;
 if not LoadNetApi32Dll then
   exit;
 NetGetJoinInformation(nil,buf,buftype);
 if buftype=NetSetupDomainName then
   Result:=true;
 NetApiBufferFree(buf);
 UnLoadNetApi32Dll;
end;

end.


 
Игорь Шевченко ©   (2004-09-10 11:40) [6]

Могу еще порекомендовать поглядеть в

http://www.schevchenko.net.ru/SRC/EnumFunctions_60.zip

модуль hswinutils.pas



Страницы: 1 вся ветка

Текущий архив: 2004.10.10;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.028 c
14-1095439669
Fs-dos
2004-09-17 20:47
2004.10.10
иконки


3-1095073859
Miau
2004-09-13 15:10
2004.10.10
Excel и MSSQL2000


14-1095934038
Мюмзик
2004-09-23 14:07
2004.10.10
о компиляции компиляторов


3-1095240506
Marina
2004-09-15 13:28
2004.10.10
Проблемы по DBF


6-1091687997
mrGrey_2
2004-08-05 10:39
2004.10.10
Распределение ресурсов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский