Bagikan melalui


Fungsi NetWkstaSetInfo (lmwksta.h)

Fungsi NetWkstaSetInfo mengonfigurasi stasiun kerja dengan informasi yang tetap berlaku setelah sistem diinisialisasi ulang.

Sintaks

NET_API_STATUS NET_API_FUNCTION NetWkstaSetInfo(
  [in]  LMSTR   servername,
  [in]  DWORD   level,
  [in]  LPBYTE  buffer,
  [out] LPDWORD parm_err
);

Parameter

[in] servername

Penunjuk ke string yang menentukan nama DNS atau NetBIOS dari server jarak jauh tempat fungsi dijalankan. Jika parameter ini NULL, komputer lokal akan digunakan.

[in] level

Tingkat informasi data. Parameter ini bisa menjadi salah satu nilai berikut.

Nilai Makna
100
Windows NT: Menentukan informasi tentang lingkungan stasiun kerja, termasuk informasi khusus platform, nama domain dan komputer lokal, dan informasi tentang sistem operasi. Parameter buffer menunjuk ke struktur WKSTA_INFO_100 . Bidang wk100_computername dan wk100_langroup struktur ini tidak dapat diatur dengan memanggil fungsi ini. Untuk mengatur nilai-nilai ini, panggil SetComputerName/SetComputerNameEx atau NetJoinDomain, masing-masing.
101
Windows NT: Selain informasi tingkat 100, menentukan jalur ke direktori LANMAN. Parameter buffer menunjuk ke struktur WKSTA_INFO_101 . Bidang wk101_computername dan wk101_langroup struktur ini tidak dapat diatur dengan memanggil fungsi ini. Untuk mengatur nilai-nilai ini, panggil SetComputerName/SetComputerNameEx atau NetJoinDomain, masing-masing.
102
Windows NT: Selain informasi tingkat 101, menentukan jumlah pengguna yang masuk ke komputer lokal. Parameter buffer menunjuk ke struktur WKSTA_INFO_102 . Bidang wk102_computername dan wk102_langroup struktur ini tidak dapat diatur dengan memanggil fungsi ini. Untuk mengatur nilai-nilai ini, panggil SetComputerName/SetComputerNameEx atau NetJoinDomain, masing-masing.
502
Windows NT: Parameter buffer menunjuk ke struktur WKSTA_INFO_502 yang berisi informasi tentang lingkungan stasiun kerja.
 

Jangan atur level 1010-1013, 1018, 1023, 1027, 1028, 1032, 1033, 1035, atau 1041-1062.

[in] buffer

Penunjuk ke buffer yang menentukan data. Format data ini tergantung pada nilai parameter tingkat . Untuk informasi selengkapnya, lihat Buffer Fungsi Manajemen Jaringan.

[out] parm_err

Penunjuk ke nilai yang menerima indeks anggota pertama struktur informasi stasiun kerja yang menyebabkan kesalahan ERROR_INVALID_PARAMETER. Jika parameter ini NULL, indeks tidak dikembalikan pada kesalahan. Untuk informasi lebih lanjut, lihat bagian Keterangan.

Mengembalikan nilai

Jika fungsi berhasil, nilai yang dikembalikan NERR_Success.

Jika fungsi gagal, nilai yang dikembalikan bisa menjadi salah satu kode kesalahan berikut.

Menampilkan kode Deskripsi
ERROR_ACCESS_DENIED
Pengguna tidak memiliki akses ke informasi yang diminta.
ERROR_INVALID_PARAMETER
Salah satu parameter fungsi tidak valid. Untuk informasi selengkapnya, lihat bagian Keterangan berikut ini.

Keterangan

Hanya anggota grup Administrator yang berhasil menjalankan fungsi NetWkstaSetInfo di server jarak jauh.

Fungsi NetWkstaSetInfo memanggil layanan stasiun kerja pada sistem lokal atau sistem jarak jauh. Hanya sejumlah terbatas anggota struktur WKSTA_INFO_502 yang benar-benar dapat diubah menggunakan fungsi NetWkstaSetInfo . Tidak ada kesalahan yang dikembalikan jika anggota diatur yang diabaikan oleh layanan stasiun kerja. Layanan stasiun kerja terutama dikonfigurasi menggunakan pengaturan di registri.

Fungsi NetWkstaUserSetInfo dapat digunakan alih-alih fungsi NetWkstaSetInfo untuk mengatur informasi konfigurasi pada sistem lokal. Fungsi NetWkstaUserSetInfo memanggil Otoritas Keamanan Lokal (LSA).

Jika fungsi NetWkstaSetInfo mengembalikan ERROR_INVALID_PARAMETER, Anda dapat menggunakan parameter parm_err untuk menunjukkan anggota pertama struktur informasi stasiun kerja yang tidak valid. (Struktur informasi stasiun kerja dimulai dengan WKSTA_INFO_ dan formatnya ditentukan oleh parameter tingkat .) Tabel berikut mencantumkan nilai yang bisa dikembalikan dalam parameter parm_err dan anggota struktur terkait yang bermasalah. (Awalan wki*_ menunjukkan bahwa anggota dapat dimulai dengan beberapa awalan, misalnya, wki100_ atau wki402_.)

Nilai Anggota
WKSTA_PLATFORM_ID_PARMNUM wki*_platform_id
WKSTA_COMPUTERNAME_PARMNUM wki*_computername
WKSTA_LANGROUP_PARMNUM wki*_langroup
WKSTA_VER_MAJOR_PARMNUM wki*_ver_major
WKSTA_VER_MINOR_PARMNUM wki*_ver_minor
WKSTA_LOGGED_ON_USERS_PARMNUM wki*_logged_on_users
WKSTA_LANROOT_PARMNUM wki*_lanroot
WKSTA_LOGON_DOMAIN_PARMNUM wki*_logon_domain
WKSTA_LOGON_SERVER_PARMNUM wki*_logon_server
WKSTA_CHARWAIT_PARMNUM wki*_char_wait
WKSTA_CHARTIME_PARMNUM wki*_collection_time
WKSTA_CHARCOUNT_PARMNUM wki*_maximum_collection_count
WKSTA_KEEPCONN_PARMNUM wki*_keep_conn
WKSTA_KEEPSEARCH_PARMNUM wki*_keep_search
WKSTA_MAXCMDS_PARMNUM wki*_max_cmds
WKSTA_NUMWORKBUF_PARMNUM wki*_num_work_buf
WKSTA_MAXWRKCACHE_PARMNUM wki*_max_wrk_cache
WKSTA_SESSTIMEOUT_PARMNUM wki*_sess_timeout
WKSTA_SIZERROR_PARMNUM wki*_siz_error
WKSTA_NUMALERTS_PARMNUM wki*_num_alerts
WKSTA_NUMSERVICES_PARMNUM wki*_num_services
WKSTA_ERRLOGSZ_PARMNUM wki*_errlog_sz
WKSTA_PRINTBUFTIME_PARMNUM wki*_print_buf_time
WKSTA_NUMCHARBUF_PARMNU wki*_num_char_buf
WKSTA_SIZCHARBUF_PARMNUM wki*_siz_char_buf
WKSTA_WRKHEURISTICS_PARMNUM wki*_wrk_heuristics
WKSTA_MAILSLOTS_PARMNUM wki*_mailslots
WKSTA_MAXTHREADS_PARMNUM wki*_max_threads
WKSTA_SIZWORKBUF_PARMNUM wki*_siz_work_buf
WKSTA_NUMDGRAMBUF_PARMNUM wki*_num_dgram_buf
 

Pengaturan parameter layanan stasiun kerja disimpan di registri, bukan dalam file LanMan.ini yang digunakan sebelumnya oleh LAN Manager. Fungsi NetWkstaSetInfo tidak mengubah nilai dalam file LanMan.ini. Ketika layanan stasiun kerja dihentikan dan dimulai ulang, parameter stasiun kerja diatur ulang ke nilai default yang ditentukan dalam registri (kecuali jika ditimpa oleh parameter baris perintah). Nilai yang ditetapkan oleh panggilan sebelumnya ke NetWkstaSetInfo dapat ditimpa saat parameter stasiun kerja diatur ulang.

Contoh

Sampel kode berikut menunjukkan cara mengatur nilai batas waktu sesi yang terkait dengan stasiun kerja menggunakan panggilan ke fungsi NetServerSetInfo . (Waktu sesi habis adalah jumlah detik server menunggu sebelum memutuskan sesi yang tidak aktif.) Kode menentukan tingkat informasi 502 (WKSTA_INFO_502).

#ifndef UNICODE
#define UNICODE
#endif
#pragma comment(lib, "netapi32.lib")

#include <stdio.h>
#include <windows.h> 
#include <lm.h>

int wmain(int argc, wchar_t *argv[])
{
   LPWKSTA_INFO_502 pBuf = NULL;
   WKSTA_INFO_502 wi;
   DWORD dwLevel = 502;
   NET_API_STATUS nStatus;
   LPWSTR pszServerName = NULL;

   if ((argc < 2) || (argc > 3))
   {
      fwprintf(stderr, L"Usage: %s [\\\\ServerName] SessionTimeOut\n", argv[0]);
      exit(1);
   }

   if (argc == 3)
      pszServerName = argv[1];
   //
   // Retrieve the current settings.
   //
   nStatus = NetWkstaGetInfo(pszServerName,
                             dwLevel,
                             (LPBYTE *)&pBuf);

   if (nStatus != NERR_Success)
   {
      fprintf(stderr, "A system error has occurred (NetWkstaGetInfo): %d\n", nStatus);
      return -1;
   }

   if (pBuf != NULL)
   {
      //
      // Copy the existing settings to the new structure,
      //   and free the buffer.
      //
      CopyMemory(&wi, pBuf, sizeof(wi));
      NetApiBufferFree(pBuf);
   }
   else
   {
      fprintf(stderr, "Memory invalid!\n");
      return -1;
   }
   //
   // Set a new session time-out value by
   //   calling the NetWkstaSetInfo function.
   //
   wi.wki502_sess_timeout = _wtoi(argv[argc-1]);
   nStatus = NetWkstaSetInfo(pszServerName,
                             dwLevel,
                             (LPBYTE)&wi,
                             NULL);
   //
   // Display the result of the call.
   //
   if (nStatus == NERR_Success)
      fwprintf(stderr, L"Workstation information reset: session time-out = %d\n", _wtoi(argv[argc-1]));
   else
      fprintf(stderr, "A system error has occurred (NetWkstaSetInfo): %d\n", nStatus);

   return 0;
}

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header lmwksta.h (termasuk Lm.h)
Pustaka Netapi32.lib
DLL Netapi32.dll

Lihat juga

NetWkstaGetInfo

NetWkstaUserGetInfo

NetWkstaUserSetInfo

Fungsi Manajemen Jaringan

Gambaran Umum Manajemen Jaringan

Fungsi Pengguna Stasiun Kerja dan Stasiun Kerja