zoukankan      html  css  js  c++  java
  • 设置Windows 8.1屏幕自己主动旋转代码, Auto-rotate function code

    程序代码实现启用或禁用Windows 8.1 Tablet的自己主动旋转功能

    方法一:使用SetDisplayAutoRotationPreferences函数功能

    #include <Windows.h>
    
    /*
    typedef enum ORIENTATION_PREFERENCE {   
    	ORIENTATION_PREFERENCE_NONE              = 0x0,   
    	ORIENTATION_PREFERENCE_LANDSCAPE         = 0x1,   
    	ORIENTATION_PREFERENCE_PORTRAIT          = 0x2,   
    	ORIENTATION_PREFERENCE_LANDSCAPE_FLIPPED = 0x4,   
    	ORIENTATION_PREFERENCE_PORTRAIT_FLIPPED  = 0x8
    }ORIENTATION_PREFERENCE; 
    */
    typedef BOOL (WINAPI *pSDARP)(ORIENTATION_PREFERENCE orientation);
    pSDARP pARP;
    
    
    int main(int argc, char* argv[])
    {
    	pARP = (pSDARP) GetProcAddress( GetModuleHandle(TEXT("user32.dll")),  
    									"SetDisplayAutoRotationPreferences"); 
    	if( pARP ){
    		if (atoi(argv[1]) == 0){
    			pARP( (ORIENTATION_PREFERENCE)(ORIENTATION_PREFERENCE_LANDSCAPE | ORIENTATION_PREFERENCE_LANDSCAPE_FLIPPED) );
    		}
    		if (atoi(argv[1]) == 1){
    			pARP( (ORIENTATION_PREFERENCE)(ORIENTATION_PREFERENCE_NONE) );
    		}
    
    	}else{
    		printf("System not supported.	");
    		return 1;
    	}
    	return 0;
    }
    方法二:通过写入注冊表Enable来设置。

    1表示启用自己主动旋转,0为禁止自己主动旋转

    详细Key的位置例如以下:

    KEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionAutoRotation

  • 相关阅读:
    PHP数组的升序降序函数
    overflow样式修改插件——jscrollpane
    li标签之间的空隙问题(转)
    纯CSS制作三角(转)
    图片放大插件——elevatezoom
    git常用命令笔记
    求数组子序列和最大值
    Vim快速入门
    C++求两个整数的最大公约数和最小公倍数
    实验楼-4-Linux文件权限
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5135526.html
Copyright © 2011-2022 走看看