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

  • 相关阅读:
    boost库常用库介绍
    boost介绍
    vs2019+win10配置boost库
    交互式多媒体图书平台的设计与实现
    47.全排列 2
    46.全排列
    基于VSCode的C++编程语言的构建调试环境搭建指南
    码农的自我修养之必备技能 学习笔记
    工程化编程实战callback接口学习笔记
    Erlang模块inet翻译
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5135526.html
Copyright © 2011-2022 走看看