亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? vm_sys_info_win32.c

?? G.711,G.723.1,G.726,G.729,GSM CODEC C/C++ code
?? C
字號:
/*
//
//                  INTEL CORPORATION PROPRIETARY INFORMATION
//     This software is supplied under the terms of a license agreement or
//     nondisclosure agreement with Intel Corporation and may not be copied
//     or disclosed except in accordance with the terms of that agreement.
//       Copyright(c) 2003-2005 Intel Corporation. All Rights Reserved.
//
*/

#include "vm_sys_info.h"

#if defined(_WIN32) || defined(_WIN64)

void vm_sys_info_get_date(vm_char *m_date, DateFormat df)
{
    SYSTEMTIME SystemTime;

    /* check error(s) */
    if (NULL == m_date)
        return;

    GetLocalTime(&SystemTime );

    switch (df)
    {
    case DDMMYY:
        vm_string_sprintf(m_date,
                          VM_STRING("%.2d/%.2d/%d"),
                          SystemTime.wDay,
                          SystemTime.wMonth,
                          SystemTime.wYear);
        break;

    case MMDDYY:
        vm_string_sprintf(m_date,
                          VM_STRING("%.2d/%.2d/%d"),
                          SystemTime.wMonth,
                          SystemTime.wDay,
                          SystemTime.wYear);
        break;

    case YYMMDD:
        vm_string_sprintf(m_date,
                          VM_STRING("%d/%.2d/%.2d"),
                          SystemTime.wYear,
                          SystemTime.wMonth,
                          SystemTime.wDay);
        break;

    default:
        vm_string_sprintf(m_date,
                          VM_STRING("%2d/%.2d/%d"),
                          SystemTime.wMonth,
                          SystemTime.wDay,
                          SystemTime.wYear);
        break;
    }

} /* void vm_sys_info_get_date(vm_char *m_date, DateFormat df) */

void vm_sys_info_get_time(vm_char *m_time, TimeFormat tf)
{
    SYSTEMTIME SystemTime;

    /* check error(s) */
    if (NULL == m_time)
        return;

    GetLocalTime(&SystemTime);

    switch (tf)
    {
    case HHMMSS:
        vm_string_sprintf(m_time,
                          VM_STRING("%.2d:%.2d:%.2d"),
                          SystemTime.wHour,
                          SystemTime.wMinute,
                          SystemTime.wSecond);
        break;

    case HHMM:
        vm_string_sprintf(m_time,
                          VM_STRING("%.2d:%.2d"),
                          SystemTime.wHour,
                          SystemTime.wMinute);
        break;

    case HHMMSSMS1:
        vm_string_sprintf(m_time,
                          VM_STRING("%.2d:%.2d:%.2d.%d"),
                          SystemTime.wHour,
                          SystemTime.wMinute,
                          SystemTime.wSecond,
                          SystemTime.wMilliseconds / 100);
        break;

    case HHMMSSMS2:
        vm_string_sprintf(m_time,
                          VM_STRING("%.2d:%.2d:%.2d.%d"),
                          SystemTime.wHour,
                          SystemTime.wMinute,
                          SystemTime.wSecond,
                          SystemTime.wMilliseconds / 10);
        break;

    case HHMMSSMS3:
        vm_string_sprintf(m_time,
                          VM_STRING("%.2d:%.2d:%.2d.%d"),
                          SystemTime.wHour,
                          SystemTime.wMinute,
                          SystemTime.wSecond,
                          SystemTime.wMilliseconds);
        break;

    default:
        vm_string_sprintf(m_time,
                          VM_STRING("%.2d:%.2d:%.2d"),
                          SystemTime.wHour,
                          SystemTime.wMinute,
                          SystemTime.wSecond);
        break;
    }

} /* void vm_sys_info_get_time(vm_char *m_time, TimeFormat tf) */

void vm_sys_info_get_os_name(vm_char *os_name)
{
    OSVERSIONINFO osvi;
    BOOL bOsVersionInfo;

    /* check error(s) */
    if (NULL == os_name)
        return;

    ZeroMemory(&osvi, sizeof(OSVERSIONINFO));
    osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);

    bOsVersionInfo = GetVersionEx((OSVERSIONINFO *) &osvi);
    if (!bOsVersionInfo)
    {
        osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
        if (!GetVersionEx((OSVERSIONINFO *) &osvi))
        {
            vm_string_sprintf(os_name, VM_STRING("Unknown"));
            return;
        }
    }

    switch (osvi.dwPlatformId)
    {
    case 2:
        /* test for the specific product family. */
        if ((5 == osvi.dwMajorVersion) && (2 == osvi.dwMinorVersion))
            vm_string_sprintf(os_name, VM_STRING("Win2003"));

        if ((5 == osvi.dwMajorVersion) && (1 == osvi.dwMinorVersion))
            vm_string_sprintf(os_name, VM_STRING("WinXP"));

        if ((5 == osvi.dwMajorVersion) && (0 == osvi.dwMinorVersion))
            vm_string_sprintf(os_name, VM_STRING("Win2000"));

        if (4 >= osvi.dwMajorVersion)
            vm_string_sprintf(os_name, VM_STRING("WinNT"));
        break;

      /* test for the Windows 95 product family. */
    case 1:
        if ((4 == osvi.dwMajorVersion) && (0 == osvi.dwMinorVersion))
        {
            vm_string_sprintf(os_name, VM_STRING("Win95"));
            if (('C' == osvi.szCSDVersion[1]) || ('B' == osvi.szCSDVersion[1]))
                vm_string_strcat(os_name, VM_STRING("OSR2" ));
        }

        if ((4 == osvi.dwMajorVersion) && (10 == osvi.dwMinorVersion))
        {
            vm_string_sprintf(os_name, VM_STRING("Win98"));
            if ('A' == osvi.szCSDVersion[1])
                vm_string_strcat(os_name, VM_STRING("SE"));
        }

        if ((4 == osvi.dwMajorVersion) && (90 == osvi.dwMinorVersion))
        {
            vm_string_sprintf(os_name,VM_STRING("WinME"));
        }
        break;

    case 3:
        /* get platform string */
        /* SystemParametersInfo(257, MAX_PATH, os_name, 0); */
        if ((4 == osvi.dwMajorVersion) && (20 == osvi.dwMinorVersion))
        {
            vm_string_sprintf(os_name, VM_STRING("PocketPC 2003"));
        }

        if ((4 == osvi.dwMajorVersion) && (21 == osvi.dwMinorVersion))
        {
            vm_string_sprintf(os_name, VM_STRING("WinMobile2003SE"));
        }

        if ((5 == osvi.dwMajorVersion) && (0 == osvi.dwMinorVersion))
        {
            vm_string_sprintf(os_name, VM_STRING("WinCE 5.0"));
        }
        break;

    /* Something else */
    default:
        vm_string_sprintf(os_name, VM_STRING("Win..."));
        break;
    }

} /* void vm_sys_info_get_os_name(vm_char *os_name) */

void vm_sys_info_get_program_name(vm_char *program_name)
{
    vm_char tmp[_MAX_PATH] = {0,};
    int i = 0;

    /* check error(s) */
    if (NULL == program_name)
        return;

    GetModuleFileName(NULL, tmp, _MAX_PATH);
    i = (int) (vm_string_strrchr(tmp, (vm_char)('\\')) - tmp + 1);
    vm_string_strncpy(program_name,tmp + i, vm_string_strlen(tmp) - i);

} /* void vm_sys_info_get_program_name(vm_char *program_name) */

void vm_sys_info_get_program_path(vm_char *program_path)
{
    vm_char tmp[_MAX_PATH] = {0,};
    int i = 0;

    /* check error(s) */
    if (NULL == program_path)
        return;

    GetModuleFileName(NULL, tmp, _MAX_PATH);
    i = (int) (vm_string_strrchr(tmp, (vm_char)('\\')) - tmp + 1);
    vm_string_strncpy(program_path, tmp, i - 1);

} /* void vm_sys_info_get_program_path(vm_char *program_path) */

vm_var32 vm_sys_info_get_cpu_num(void)
{
    SYSTEM_INFO siSysInfo;

    ZeroMemory(&siSysInfo, sizeof(SYSTEM_INFO));
    GetSystemInfo(&siSysInfo);

    return siSysInfo.dwNumberOfProcessors;

} /* vm_var32 vm_sys_info_get_cpu_num(void) */

vm_var32 vm_sys_info_get_mem_size(void)
{
    MEMORYSTATUS m_memstat;

    ZeroMemory(&m_memstat, sizeof(MEMORYSTATUS));
    GlobalMemoryStatus(&m_memstat);

    return (vm_var32)((double)m_memstat.dwTotalPhys / (1024 * 1024 * 2) + 0.95) * 2;

} /* vm_var32 vm_sys_info_get_mem_size(void) */

#if !defined(_WIN32_WCE)

#pragma comment(lib, "Setupapi.lib")
#include <setupapi.h>

void vm_sys_info_get_vga_card(vm_char *vga_card)
{
    SP_DEVINFO_DATA sp_dev_info;
    HDEVINFO DeviceInfoSet;
    vm_char string1[] = VM_STRING("Display");
    DWORD dwIndex = 0;
    vm_char data[256] = {0,};

    /* check error(s) */
    if (NULL == vga_card)
        return;

    ZeroMemory(&sp_dev_info, sizeof(SP_DEVINFO_DATA));
    ZeroMemory(&DeviceInfoSet, sizeof(HDEVINFO));

    DeviceInfoSet = SetupDiGetClassDevs(NULL, NULL, NULL, DIGCF_ALLCLASSES | DIGCF_PRESENT);
    sp_dev_info.cbSize = sizeof(SP_DEVICE_INTERFACE_DATA);
    while (SetupDiEnumDeviceInfo(DeviceInfoSet, dwIndex, &sp_dev_info))
    {
        SetupDiGetDeviceRegistryProperty(DeviceInfoSet,
                                         &sp_dev_info,
                                         SPDRP_CLASS,
                                         NULL,
                                         (unsigned char *) data,
                                         256,
                                         NULL);
        if (!vm_string_strcmp((vm_char*)data, string1))
        {
            SetupDiGetDeviceRegistryProperty(DeviceInfoSet,
                                             &sp_dev_info,
                                             SPDRP_DEVICEDESC,
                                             NULL,
                                             (PBYTE) vga_card,
                                             256,
                                             NULL);
            break;
        }
        dwIndex++;
    }

    SetupDiDestroyDeviceInfoList(DeviceInfoSet);

} /* void vm_sys_info_get_vga_card(vm_char *vga_card) */

void vm_sys_info_get_cpu_name(vm_char *cpu_name)
{
    HKEY hKey;
    vm_char data[256] = {0,};
    DWORD dwSize = sizeof(data);
    int i = 0;
    LONG lErr;

    /* check error(s) */
    if (NULL == cpu_name)
        return;

    lErr = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
                        VM_STRING("Hardware\\Description\\System\\CentralProcessor\\0"),
                        0,
                        KEY_QUERY_VALUE,
                        &hKey);
    if (ERROR_SUCCESS == lErr)
    {
        RegQueryValueEx(hKey,
                        _T("ProcessorNameString"),
                        NULL,
                        NULL,
                        (LPBYTE)&data,
                        &dwSize);
        /* error protection */
        data[sizeof(data) - 1] = 0;
        while (data[i++] == ' ');
        vm_string_strcpy(cpu_name, (vm_char *)(data + i - 1));
        RegCloseKey (hKey);

    }
    else
        vm_string_sprintf(cpu_name, VM_STRING("Unknown"));

} /* void vm_sys_info_get_cpu_name(vm_char *cpu_name) */

vm_var32 vm_sys_info_get_cpu_speed(void)
{
    HKEY hKey;
    vm_var32 data = 0;
    DWORD dwSize = sizeof(vm_var32);
    LONG lErr;

    lErr = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
                        VM_STRING("Hardware\\Description\\System\\CentralProcessor\\0"),
                        0,
                        KEY_QUERY_VALUE,
                        &hKey);
    if (ERROR_SUCCESS == lErr)
    {
        RegQueryValueEx (hKey, _T("~MHz"), NULL, NULL, (LPBYTE)&data, &dwSize);

        RegCloseKey(hKey);

        return data;
    }
    else
        return 0;

} /* vm_var32 vm_sys_info_get_cpu_speed(void) */

void vm_sys_info_get_computer_name(vm_char *computer_name)
{
    vm_char data[256] = {0,};
    DWORD dwSize = sizeof(data);

    /* check error(s) */
    if (NULL == computer_name)
        return;

    GetComputerName(data, &dwSize);
    vm_string_sprintf(computer_name, VM_STRING("%s"), data);

} /* void vm_sys_info_get_computer_name(vm_char* computer_name) */

#elif defined(_WIN32_WCE)

#include <winioctl.h>

BOOL KernelIoControl(DWORD dwIoControlCode,
                     LPVOID lpInBuf,
                     DWORD nInBufSize,
                     LPVOID lpOutBuf,
                     DWORD nOutBufSize,
                     LPDWORD lpBytesReturned);

#define IOCTL_PROCESSOR_INFORMATION CTL_CODE(FILE_DEVICE_HAL, 25, METHOD_BUFFERED, FILE_ANY_ACCESS)

typedef struct _PROCESSOR_INFO
{
    vm_var16        wVersion;
    vm_char         szProcessCore[40];
    vm_var16        wCoreRevision;
    vm_char         szProcessorName[40];
    vm_var16        wProcessorRevision;
    vm_char         szCatalogNumber[100];
    vm_char         szVendor[100];
    vm_var32        dwInstructionSet;
    vm_var32        dwClockSpeed;

} PROCESSOR_INFO;

void vm_sys_info_get_vga_card(vm_char *vga_card)
{
    /* check error(s) */
    if (NULL == vga_card)
        return;

    vm_string_sprintf(vga_card, VM_STRING("Unknown"));

} /* void vm_sys_info_get_vga_card(vm_char *vga_card) */

void vm_sys_info_get_cpu_name(vm_char *cpu_name)
{
    PROCESSOR_INFO pi;
    DWORD dwBytesReturned;
    vm_var32 dwSize = sizeof(PROCESSOR_INFO);
    BOOL bResult;

    /* check error(s) */
    if (NULL == cpu_name)
        return;

    ZeroMemory(&pi, sizeof(PROCESSOR_INFO));
    bResult = KernelIoControl(IOCTL_PROCESSOR_INFORMATION,
                              NULL,
                              0,
                              &pi,
                              sizeof(PROCESSOR_INFO),
                              &dwBytesReturned);

    vm_string_sprintf(cpu_name,
                      VM_STRING("%s %s"),
                      pi.szProcessCore,
                      pi.szProcessorName);

} /* void vm_sys_info_get_cpu_name(vm_char *cpu_name) */

void vm_sys_info_get_computer_name(vm_char *computer_name)
{
    vm_char data[256] = {0,};
    DWORD dwSize = sizeof(data);

    /* check error(s) */
    if (NULL == computer_name)
        return;

    SystemParametersInfo(SPI_GETOEMINFO, dwSize, data, 0);
    vm_string_sprintf(computer_name, VM_STRING("%s"), data);

} /* void vm_sys_info_get_computer_name(vm_char *computer_name) */

vm_var32 vm_sys_info_get_cpu_speed(void)
{
    PROCESSOR_INFO pi;
    vm_var32 res = 400;
    DWORD dwBytesReturned;
    vm_var32 dwSize = sizeof(PROCESSOR_INFO);
    BOOL bResult;

    ZeroMemory(&pi,sizeof(PROCESSOR_INFO));
    bResult = KernelIoControl(IOCTL_PROCESSOR_INFORMATION,
                              NULL,
                              0,
                              &pi,
                              sizeof(PROCESSOR_INFO),
                              &dwBytesReturned);

    if (pi.dwClockSpeed)
        res = pi.dwClockSpeed;

    return res;

} /* vm_var32 vm_sys_info_get_cpu_speed(void) */

#endif /* defined(_WIN32_WCE) */

#endif /* defined(_WIN32) || defined(_WIN64) */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美视频中文一区二区三区在线观看| 国产精品美女久久久久久2018| 欧美精品在线一区二区三区| 欧美精品xxxxbbbb| 26uuu精品一区二区三区四区在线| 久久久久久久久久久黄色| 国产精品二三区| 美脚の诱脚舐め脚责91| 成人深夜视频在线观看| 欧洲精品一区二区| 精品日韩在线观看| 亚洲激情中文1区| 美女一区二区三区在线观看| 成人av电影在线| 欧美一三区三区四区免费在线看 | 欧美一区二区精品在线| 国产欧美日韩不卡免费| 日韩精品电影在线| 国产69精品一区二区亚洲孕妇| 日本韩国精品在线| 久久免费偷拍视频| 麻豆国产欧美日韩综合精品二区| 97国产一区二区| 精品不卡在线视频| 亚洲成精国产精品女| 不卡一区二区三区四区| 精品国产一区二区亚洲人成毛片 | 欧洲在线/亚洲| 国产精品乱人伦一区二区| 精品在线播放免费| 日韩精品最新网址| 日韩精品午夜视频| 欧美日本精品一区二区三区| 亚洲免费观看高清在线观看| 轻轻草成人在线| 欧美精品第1页| 日本三级亚洲精品| 777亚洲妇女| 蜜臀av国产精品久久久久| 884aa四虎影成人精品一区| 亚洲一区国产视频| 欧美亚洲尤物久久| 午夜久久久久久电影| 欧美在线不卡视频| 日韩电影一二三区| 久久久久久久综合狠狠综合| 国产乱子伦视频一区二区三区| 久久天堂av综合合色蜜桃网| 国产酒店精品激情| 中文字幕在线免费不卡| 99re热这里只有精品视频| 亚洲精品久久久蜜桃| 欧美日韩一区二区三区在线看| 亚洲尤物视频在线| 日韩欧美一级特黄在线播放| 国产美女视频91| 亚洲三级电影全部在线观看高清| 欧美色精品在线视频| 毛片av中文字幕一区二区| 国产日韩欧美精品一区| 91老司机福利 在线| 免费在线看一区| 国产精品欧美精品| 日韩欧美自拍偷拍| 91社区在线播放| 久久精品国产久精国产| 国产精品久久久久久久裸模| 91精品国产综合久久香蕉的特点| 国模套图日韩精品一区二区| 亚洲欧美另类久久久精品| 日韩一区二区三区免费观看| 不卡av在线网| 久久av资源网| 水野朝阳av一区二区三区| 国产精品人人做人人爽人人添| 91精品国产91热久久久做人人| 91在线观看下载| 国内外精品视频| 精品一区二区精品| 五月天精品一区二区三区| 亚洲色图在线看| 国产精品久久久久三级| 久久久久久免费毛片精品| 欧美成人官网二区| 日韩一区二区麻豆国产| 欧美日韩一区二区三区在线看| eeuss国产一区二区三区| 国产精品69毛片高清亚洲| 久久狠狠亚洲综合| 日韩av电影一区| 久久精品国产免费看久久精品| 青娱乐精品在线视频| 日韩av中文在线观看| 青娱乐精品视频在线| 免费观看在线色综合| 免费日韩伦理电影| 久久精品国产网站| 国产精品自在在线| 不卡免费追剧大全电视剧网站| 成人午夜av在线| 99久久久久免费精品国产| 91首页免费视频| 欧美午夜精品电影| 91精品国产综合久久久蜜臀图片| 91精选在线观看| 国产日韩精品久久久| 亚洲图片激情小说| 精品一区二区在线观看| 国产综合久久久久影院| 成人激情小说乱人伦| 日本高清不卡在线观看| 国产成人综合网站| 国产a久久麻豆| 欧美日韩一区三区| 日本一区二区三区在线观看| 中文字幕在线观看不卡| 舔着乳尖日韩一区| gogogo免费视频观看亚洲一| 欧美日韩中文国产| 久久午夜国产精品| 亚洲第一激情av| 91在线一区二区| 国产一区二区三区精品欧美日韩一区二区三区| 日本丶国产丶欧美色综合| 久久狠狠亚洲综合| 99久久99精品久久久久久| 欧美精品aⅴ在线视频| 国产日韩精品一区二区三区| 亚洲h精品动漫在线观看| 成人激情av网| 久久婷婷色综合| 男女激情视频一区| 日本高清不卡一区| 中文字幕不卡的av| 国内精品免费在线观看| 99久久99久久精品免费观看| 精品对白一区国产伦| 亚洲观看高清完整版在线观看| 成人中文字幕合集| 亚洲精品一区二区精华| 午夜电影一区二区| 91久久精品网| 欧美在线三级电影| 亚洲一二三专区| 成+人+亚洲+综合天堂| 久久亚洲综合av| 久久成人羞羞网站| 国产精品网站在线播放| 激情综合色综合久久综合| 欧美一区二区三区人| 久久精品国产久精国产爱| 欧美精品v国产精品v日韩精品 | 国产日韩影视精品| 成人美女视频在线观看18| 欧美激情一二三区| 成人av网址在线| 亚洲免费大片在线观看| 色八戒一区二区三区| 亚洲午夜激情网站| 日韩欧美成人一区二区| 黄色日韩网站视频| 国产精品国产自产拍在线| 色综合久久久久久久久久久| 亚洲乱码中文字幕| 欧美精品一卡两卡| 精品一区二区三区蜜桃| 国产精品情趣视频| 欧美日韩三级视频| 极品美女销魂一区二区三区 | 亚洲图片激情小说| 欧美一级夜夜爽| 高清久久久久久| 亚洲成人精品一区| 国产亚洲一区二区在线观看| 色网综合在线观看| 美女视频黄a大片欧美| 国产欧美精品一区aⅴ影院| 色94色欧美sute亚洲线路一ni| 日韩av一区二区三区四区| 亚洲色图欧美在线| 欧美精品一区二区蜜臀亚洲| 色综合久久久网| 国产成都精品91一区二区三| 日韩精品电影在线观看| 1区2区3区精品视频| 久久久亚洲午夜电影| 777午夜精品免费视频| 色婷婷综合久久久久中文一区二区 | av一区二区不卡| 久久99在线观看| 一区二区三区久久| 国产精品视频一二三| 精品国产制服丝袜高跟| 91麻豆精品91久久久久久清纯 | 欧美r级电影在线观看| 欧美日韩国产三级| av网站免费线看精品| 国产.精品.日韩.另类.中文.在线.播放| 亚洲18女电影在线观看| 亚洲日本丝袜连裤袜办公室|