コード例 #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="NetBiosInfo"/> class.
 /// </summary>
 /// <param name="w">The w.</param>
 public NetBiosInfo(WKSTA_INFO_100 w)
 {
     PlatformID   = w.wki100_platform_id;
     ComputerName = w.wki100_computername;
     LANGroup     = w.wki100_langroup;
     VerMajor     = w.wki100_ver_major;
     VerMinor     = w.wki100_ver_minor;
 }
コード例 #2
0
        public static String GetDomainName(String ServerName)
        {
            IntPtr domainPtr = new IntPtr();
            int    result    = 0;

            String DomaiName = String.Empty;

            try
            {
                result = NetWkstaGetInfo(ServerName, 100, out domainPtr);

                if (result == ErrorConstants.ERROR_ACCESS_DENIED)
                {
                    EstablishConnectionWithPrompt(ServerName, String.Empty, String.Empty, ref result);

                    if (result == ErrorConstants.NERR_Success)
                    {
                        result = NetWkstaGetInfo(ServerName, 100, out domainPtr);
                    }
                }

                if (result == ErrorConstants.NERR_Success)
                {
                    WKSTA_INFO_100 wksta_info = (WKSTA_INFO_100)Marshal.PtrToStructure(domainPtr, typeof(WKSTA_INFO_100));

                    if (!string.IsNullOrEmpty(wksta_info.lan_group))
                    {
                        DomaiName = wksta_info.lan_group;
                    }
                }



                NetAPICommon.NetApiBufferFree(domainPtr);
            }
            catch (Exception ex)
            {
                AMTLogger.WriteToLog(ex.Message, MethodBase.GetCurrentMethod().Name, 0, AMTLogger.LogInfo.Error);
            }
            return(DomaiName);
        }
コード例 #3
0
        public static string GetComputerVersion(string server)
        {
            IntPtr buffer = IntPtr.Zero;
            uint   ret    = NetWkstaGetInfo(server, 100, out buffer);

            if (ret != 0)
            {
                Trace.WriteLine("GetComputerVersion " + server + " returned " + ret);
                return("not found");
            }
            try
            {
                WKSTA_INFO_100 data    = (WKSTA_INFO_100)Marshal.PtrToStructure(buffer, typeof(WKSTA_INFO_100));
                string         version = data.ver_major.ToString() + "." + data.ver_minor.ToString();
                return(version);
            }
            finally
            {
                NetApiBufferFree(buffer);
            }
        }
コード例 #4
0
 private static extern int NetWkstaGetInfo(string server,
     int level,
     out WKSTA_INFO_100 info);
コード例 #5
0
 private static extern int NetApiBufferFree(WKSTA_INFO_100 info);
コード例 #6
0
ファイル: NetExtras.cs プロジェクト: andreigec/ANDREICSLIB
 /// <summary>
 /// Initializes a new instance of the <see cref="NetBiosInfo"/> class.
 /// </summary>
 /// <param name="w">The w.</param>
 public NetBiosInfo(WKSTA_INFO_100 w)
 {
     PlatformID = w.wki100_platform_id;
     ComputerName = w.wki100_computername;
     LANGroup = w.wki100_langroup;
     VerMajor = w.wki100_ver_major;
     VerMinor = w.wki100_ver_minor;
 }
コード例 #7
0
 private static extern int NetApiBufferFree(WKSTA_INFO_100 info);
コード例 #8
0
 private static extern int NetWkstaGetInfo(string server,
                                           int level,
                                           out WKSTA_INFO_100 info);