更换控制面板页面

【勇芳软件工作室】汉化HomePreviousNext

ReplacePage成员函数仅由控制面板应用程序调用。它允许您使用自定义页面替换标准控制面板应用程序的属性表。例如,如果鼠标制造商向其鼠标添加额外的按钮,制造商可以替换标准鼠标控制面板的“按钮”属性表页。ReplacePage成员函数不被shell调用,因为shell没有可以由shell扩展名替换的任何属性表页面。目前,只有控制面板应用程序调用此成员函数,但其??他属性表供应商可以使用此成员函数来允许其属性表页被替换。

允许替换属性表页面的每个属性表处理程序必须指定替换页面的其他处理程序自己注册的注册表位置。对于标准控制面板应用程序,此位置由REGSTR.H文件中的REGSTR_PATH_CONTROLSFOLDER宏定义。宏定义HKEY_LOCAL_MACHINE键下的所有控制面板属性表页面替换处理程序必须注册的键。例如,需要替换鼠标控制面板的属性表页面的属性表处理程序将在以下注册表位置注册一个属性表扩展处理程序。

HKEY_LOCAL_MACHINE

REGSTR_PATH_CONTROLSFOLDER

老鼠

的shellex

PropertySheetHandlers = NewMousePage

NewMousePage = {00000000-1111-2222-3333-00000000000002}

此外,允许可更换页面的属性表处理程序必须为可替换的每个页面定义标识符。

标准控制面板应用程序在REGSTR.H和CPLEXT.H头文件中定义此位置。在REGSTR.H中,REGSTR_PATH_CONTROLSFOLDER宏定义了HKEY_LOCAL_MACHINE键下的所有控制面板属性表页面替换处理程序必须注册的键。CPLEXT.H为每个控制面板应用程序定义子项,该应用程序包含可替换属性表页面:\\ 老鼠用于鼠标控制面板应用程序和\\ 键盘键盘控制面板应用程序。

标准控制面板应用程序在CPLEXT.H中定义了这些标识符。例如,CPLPAGE_MOUSE_BUTTONS定义了“鼠标控制面板”按钮页面的标识符,CPLPAGE_KEYBOARD_SPEED定义了“键盘控制面板”速度页面的标识符。