zoukankan      html  css  js  c++  java
  • Visual C++ 2011416

    一.获取系统语言和位置

    相关函数

    void UserLCID()
    {
        //Returns the locale identifier for the user default locale. 
        LCID id=::GetUserDefaultLCID();
        cout << id <<endl;
        WCHAR strNameBuffer[LOCALE_NAME_MAX_LENGTH];
        DWORD error = ERROR_SUCCESS;
        //Converts a locale identifier to a locale name.
        LCIDToLocaleName(id ,strNameBuffer,LOCALE_NAME_MAX_LENGTH,0);
        cout << strNameBuffer <<endl;
        //Converts a locale name to a locale identifier.
        LCID id2=::LocaleNameToLCID(strNameBuffer,0);
        //Returns the locale identifier for the system locale. 
        LCID id3=::GetSystemDefaultLCID();
    }
    
    void UserLangID()
    {
        //Returns the language identifier for the current user locale.
        LANGID id=::GetUserDefaultLangID();
        //Returns the language identifier for the system locale.
        LANGID id2=::GetSystemDefaultLangID();
    }
    

    设置当前线程的Locate

    void ThreadLocal()
    {
        //Returns the locale identifier of the current locale for the calling thread. 
        LCID id=::GetThreadLocale();
        ::SetThreadLocale(id);
    }
    

    设置线程语言偏好

    二.c打印函数

    printf可输出char字符,wprintf可输出宽字符

    char   ch = 'h', *string = "computer";
    int    count = -9234;
    double fp = 251.7366;
    wchar_t wch = L'w', *wstring = L"Unicode";
    
    
    /* Display characters. */
    
    printf("Characters in field (1):\n%10c%5hc%5C%5lc\n", ch, ch, wch, wch);
    wprintf(L"Characters in field (2):\n%10C%5hc%5c%5lc\n", ch, ch, wch, wch);
    
    wsprintf 填充一段缓冲区
    TCHAR tcBuffer[1024] = {0};
    wsprintf(tcBuffer,L"Age = %d,Name = %s\n",10,L"hello");
    wprintf(tcBuffer);
    
     
    image

    三.DDX数据交换机制UpdateData

    如果WPF的数据绑定,当UpdateData(TRUE)时则是UI更新数据,False则是数据更新UI控件数据

    首先进行变量绑定,DDX_Text(pDX, IDC_EDIT, m_edit);
    需要注意的是UpdateData方法是对于整个窗体范围的,而非一个控件

    参考:http://hi.baidu.com/kxw102/blog/item/c3d7623599b653375ab5f55c.html

    四.ZeroMemory,memset(清零操作)

    memset
    Sets buffers to a specified character.

    char buffer[] = "This is a test of the memset function";
    int a=sizeof(buffer);
    printf( "Before: %s\n", buffer );
    memset( buffer, '*', strlen(buffer));
    printf( "After:  %s\n", buffer );
    

    ZeroMemory全部置0

    char buffer[] = "This is a test of the memset function";
    int a=sizeof(buffer);
    printf( "Before: %s\n", buffer );
    ZeroMemory(buffer,strlen(buffer));
    printf( "After:  %s\n", buffer );
    

    参考:http://blog.csdn.net/yacper/archive/2010/01/25/5254294.aspx

    注意是清零而已,并非改变了数据结构的大小,数据重置而已,不要对类进行此操作

    五.注册表操作

    1.打开注册表

    int res = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
        "HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0",0,KEY_QUERY_VALUE,&hKey);
    

    2.查询键值

    res = ::RegQueryValueEx(hKey,"~MHz",NULL,NULL,(LPBYTE)data1,&dataSize);
    

    3.设置键值

    RegSetValueEx(hKey,"name",0,REG_SZ,(unsigned char*)name,strlen(name));
    

    4.删除键值

    RegDeleteKey(hKey,"name");
    

    5.创建键值

    rs = RegCreateKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\USER\\INFO",&hKey);
    

    6.释放句柄

    RegCloseKey(hKey);
    
  • 相关阅读:
    Mvc4.0添加商品到Cookie
    个人作业——词频统计
    利用飞信虚拟框架开发绿色.NET程序
    专用服务器和共享服务器的区别(转)
    我做项目对Excel进程处理问题
    通过SQL Server 2000的链接服务器访问Sybase数据库
    结合地理信息系统开发的项目
    模仿Smartphone的开始菜单效果
    如何修改Windows Mobile手机系统颜色
    个人负责的第一个地图应用项目框架截图
  • 原文地址:https://www.cnblogs.com/Clingingboy/p/2018343.html
Copyright © 2011-2022 走看看