Autor Téma: Jmeno Pracovni skupiny  (Přečteno 5881 krát)

Jirka

  • Host
Jmeno Pracovni skupiny
« kdy: 18-04-2005, 17:48:00 »
Dobry den.

Pořád zápasím s přejmenováním „Pracovní skupiny“ ve Windows XP pod Delphi 5

Ručně se ve vlastnostech, na záložce "Název počítače" provede změna a vše funguje. Když však chci použít Delphi narážím neustále na nějaký proglém.

Funkce, která vrací  Pracovní skupiny je NetWkstaGetInfo. Obdobně fce, ktará má toto umět nastavit je NetWkstaSetInfo. Vždy však dostanu návratový kód 124 (nenašel jsem co to je) a nic se nestane.

Můj kód

type
  WKSTA_INFO_100   = Record
      wki100_platform_id  : DWORD;
      wki100_computername : LPWSTR;
      wki100_langroup     : LPWSTR;
      wki100_ver_major    : DWORD;
      wki100_ver_minor    : DWORD;
   end;
   LPWKSTA_INFO_100 = ^WKSTA_INFO_100;

Function NetWkstaGetInfo
        (ServerName : LPWSTR;
         Level      : DWORD;
         BufPtr     : Pointer) : Longint; Stdcall;
                external 'netapi32.dll' Name 'NetWkstaGetInfo';

Function NetWkstaSetInfo
        (ServerName : LPWSTR;
         Level      : DWORD;
         BufPtr     : Pointer;
         ParmErr    : Pointer) : Longint; Stdcall;
                external 'netapi32.dll' Name 'NetWkstaSetInfo';

procedure SetNetParam(langroup : string);
 Var
  wDomainName : WideString;
  PBuf  : LPWKSTA_INFO_100;
  Res   : LongInt;
  Err   : DWord;
begin
  NetWkstaGetInfo (Nil, 100, @PBuf);  // načtu stávající hodnoty - funguje
  wDomainName := langroup;
  PBuf^.wki100_langroup:=PWideChar (wDomainName);//upravím LanGroup-funguje
  Res := NetWkstaSetInfo (Nil, 100, @PBuf, @Err);//pokusím se nastavit na PC
  if Res <> NERR_Success then ShowMessage(IntToStr(Res)+' '+IntToStr(Err)); end;

Existuje nějaká jiná funkce pro změnu pracovní skupiny?

Předem moc děkuji

Nováček