posts - 12,  comments - 6,  trackbacks - 0
        

检测是不是Win7系统
bool IsWindows7()
{
    OSVERSIONINFOEX osvi;
//    bool bOsVersionInfoEx=false;
    DWORD dwType=0UL;
    
bool bWin7=false;
    ZeroMemory(
&osvi, sizeof(SYSTEM_INFO));
    ZeroMemory(
&osvi, sizeof(OSVERSIONINFOEX));
    osvi.dwOSVersionInfoSize 
= sizeof(OSVERSIONINFOEX);
    BOOL bOsVersionInfoEx 
= GetVersionEx ((LPOSVERSIONINFOA) &osvi);
    
if!(bOsVersionInfoEx) )
        
return false;
    
if(osvi.dwMajorVersion==6)
    
{
        
if(osvi.dwMinorVersion==1)
        
{
            
if(osvi.wProductType==VER_NT_WORKSTATION)
            
{
                bWin7
=true;
            }

        }

    }

    
return bWin7;
}



Win8系统马上要上市了,开发需要想实现iPad或Android系统里触摸书写板的动态弹出和动态消失效果。
单位工作系统是Win7,测试平板是Win8的,的在这里只做了一下Win7手写板的截图。
          

关于书写板的弹出:
Win7、Win8弹出书写板并没有什么差别。都是外部调用TabTip.exe而已。

void ExecuteTabTip()
{
    TCHAR tcProgramFile[MAX_PATH];
    SHGetSpecialFolderPath(NULL,tcProgramFile,CSIDL_PROGRAM_FILES,0);
    
char *token;
    
char seps[]   = "\\";
    token = strtok( tcProgramFile, seps );
    std::string strPath = token;
    strPath = strPath + "\\Program Files\\Common Files\\Microsoft Shared\\ink\\TabTip.exe";
    ShellExecute(NULL, "open", strPath.c_str(), NULL, NULL, SW_SHOWNA);
}



关于书写板的消失:
Win7中的方法。
void TerminateTabTip4Win7()
{
    DWORD WM_DESKBAND_CLICKED = ::RegisterWindowMessage(_TEXT("TabletInputPanelDeskBandClicked"));

    HWND wKB = ::FindWindow(_TEXT("IPTip_Main_Window"), NULL);
    
if(wKB != NULL && ::IsWindowVisible(wKB))
    
{
        ::PostMessage(wKB, WM_DESKBAND_CLICKED, 00);
    }

}

Win8中的方法。
void TerminateTabTip4Win8()
{
   HWND wKB = ::FindWindow(_TEXT("IPTip_Main_Window"), NULL);
   
if(wKB != NULL && ::IsWindowVisible(wKB))
   
{
       ::PostMessage(wKB, WM_SYSCOMMAND, SC_CLOSE, 0);
   }

}

Win8下书写板停靠代码
      HWND wKB = ::FindWindow(_TEXT("IPTip_Main_Window"), NULL);
      DWORD WM_DOCK_BUTTON_PRESSED = ::RegisterWindowMessage(_TEXT("IPTipDockButtonPressed")); 
      
PostMessage(wKB, WM_DOCK_BUTTON_PRESSED, 0, 0);



posted on 2012-10-10 15:03 vic.MINg 阅读(1860) 评论(0)  编辑 收藏 引用 所属分类: Visual C++

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理



<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用链接

留言簿(1)

随笔分类(13)

随笔档案(12)

搜索

  •  

最新评论

阅读排行榜

评论排行榜