各种全局计数器或共享变量的标识符。 可以使用 SHGlobalCounterIncrement 和 SHGlobalCounterDecrement 递增或递减每个全局计数器。
语法
typedef enum {
GLOBALCOUNTER_SEARCHMANAGER,
GLOBALCOUNTER_SEARCHOPTIONS,
GLOBALCOUNTER_FOLDERSETTINGSCHANGE,
GLOBALCOUNTER_RATINGS,
GLOBALCOUNTER_APPROVEDSITES,
GLOBALCOUNTER_RESTRICTIONS,
GLOBALCOUNTER_SHELLSETTINGSCHANGED,
GLOBALCOUNTER_SYSTEMPIDLCHANGE,
GLOBALCOUNTER_OVERLAYMANAGER,
GLOBALCOUNTER_QUERYASSOCIATIONS,
GLOBALCOUNTER_IESESSIONS,
GLOBALCOUNTER_IEONLY_SESSIONS,
GLOBALCOUNTER_APPLICATION_DESTINATIONS,
__UNUSED_RECYCLE_WAS_GLOBALCOUNTER_CSCSYNCINPROGRESS,
GLOBALCOUNTER_BITBUCKETNUMDELETERS,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_SHARES,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_A,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_B,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_C,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_D,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_E,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_F,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_G,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_H,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_I,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_J,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_K,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_L,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_M,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_N,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_O,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_P,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_Q,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_R,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_S,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_T,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_U,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_V,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_W,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_X,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_Y,
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_Z,
__UNUSED_RECYCLE_WAS_GLOBALCOUNTER_RECYCLEDIRTYCOUNT_SERVERDRIVE,
__UNUSED_RECYCLE_WAS_GLOBALCOUNTER_RECYCLEGLOBALDIRTYCOUNT,
GLOBALCOUNTER_RECYCLEBINENUM,
GLOBALCOUNTER_RECYCLEBINCORRUPTED,
GLOBALCOUNTER_RATINGS_STATECOUNTER,
GLOBALCOUNTER_PRIVATE_PROFILE_CACHE,
GLOBALCOUNTER_INTERNETTOOLBAR_LAYOUT,
GLOBALCOUNTER_FOLDERDEFINITION_CACHE,
GLOBALCOUNTER_COMMONPLACES_LIST_CACHE,
GLOBALCOUNTER_PRIVATE_PROFILE_CACHE_MACHINEWIDE,
GLOBALCOUNTER_ASSOCCHANGED,
GLOBALCOUNTER_APP_ITEMS_STATE_STORE_CACHE,
GLOBALCOUNTER_SETTINGSYNC_ENABLED,
GLOBALCOUNTER_APPSFOLDER_FILETYPEASSOCIATION_COUNTER,
GLOBALCOUNTER_USERINFOCHANGED,
GLOBALCOUNTER_SYNC_ENGINE_INFORMATION_CACHE_MACHINEWIDE,
GLOBALCOUNTER_BANNERS_DATAMODEL_CACHE_MACHINEWIDE,
GLOBALCOUNTER_MAXIMUMVALUE
} SHGLOBALCOUNTER;
常量
GLOBALCOUNTER_SEARCHMANAGER用于 ISearchManager 的全局计数器。 |
GLOBALCOUNTER_SEARCHOPTIONS用于 ISearchQueryHelper 的全局计数器,用于标识查询分析器的设置是否已更改。 |
GLOBALCOUNTER_FOLDERSETTINGSCHANGE用于标识文件夹设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RATINGS用于标识评级是否已更改的全局计数器。 |
GLOBALCOUNTER_APPROVEDSITES用于标识已批准的站点是否已更改的全局计数器。 |
GLOBALCOUNTER_RESTRICTIONS用于标识限制是否已更改的全局计数器。 |
GLOBALCOUNTER_SHELLSETTINGSCHANGED用于标识 Shell 设置是否已更改的全局计数器。 |
GLOBALCOUNTER_SYSTEMPIDLCHANGE用于标识系统 PIDL 是否已更改的全局计数器。 |
GLOBALCOUNTER_OVERLAYMANAGER用于标识覆盖管理器状态是否已更改的全局计数器。 |
GLOBALCOUNTER_QUERYASSOCIATIONS用于标识查询关联是否已更改的全局计数器。 |
GLOBALCOUNTER_IESESSIONS用于标识 IE 会话数是否已更改的全局计数器。 |
GLOBALCOUNTER_IEONLY_SESSIONS用于标识 IE 会话数是否已更改的全局计数器。 |
GLOBALCOUNTER_APPLICATION_DESTINATIONS标识 用于标识是否已从系统添加或删除应用程序的全局计数器。 |
__UNUSED_RECYCLE_WAS_GLOBALCOUNTER_CSCSYNCINPROGRESS未使用。 |
GLOBALCOUNTER_BITBUCKETNUMDELETERS用于标识回收站删除操作的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_SHARES用于标识共享上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_A用于标识驱动器 A 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_B用于标识驱动器 B 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_C用于标识驱动器 C 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_D用于标识驱动器 D 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_E用于标识驱动器 E 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_F用于标识驱动器 F 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_G用于标识驱动器 G 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_H用于标识驱动器 H 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_I用于标识驱动器 I 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_J用于标识驱动器 J 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_K用于标识驱动器 K 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_L用于标识驱动器 L 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_M用于标识驱动器 M 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_N用于标识驱动器 N 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_O用于标识驱动器 O 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_P用于标识驱动器 P 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_Q用于标识驱动器 Q 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_R用于标识驱动器 R 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_S用于标识驱动器 S 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_T用于标识驱动器 T 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_U用于标识驱动器 U 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_V用于标识驱动器 V 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_W用于标识驱动器 W 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_X用于标识驱动器 X 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_Y用于标识驱动器 Y 上的设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEDIRTYCOUNT_DRIVE_Z用于标识驱动器 Z 上的设置是否已更改的全局计数器。 |
__UNUSED_RECYCLE_WAS_GLOBALCOUNTER_RECYCLEDIRTYCOUNT_SERVERDRIVE未使用。 |
__UNUSED_RECYCLE_WAS_GLOBALCOUNTER_RECYCLEGLOBALDIRTYCOUNT未使用。 |
GLOBALCOUNTER_RECYCLEBINENUM用于标识回收站设置是否已更改的全局计数器。 |
GLOBALCOUNTER_RECYCLEBINCORRUPTED用于标识是否已删除回收站的全局计数器。 |
GLOBALCOUNTER_RATINGS_STATECOUNTER用于标识评级是否已更改的全局计数器。 |
GLOBALCOUNTER_PRIVATE_PROFILE_CACHE全局计数器状态。 |
GLOBALCOUNTER_INTERNETTOOLBAR_LAYOUT用于标识 Internet 工具栏布局是否已更改的全局计数器。 |
GLOBALCOUNTER_FOLDERDEFINITION_CACHE用于标识对文件夹定义缓存的更改的全局计数器。 |
GLOBALCOUNTER_COMMONPLACES_LIST_CACHE用于标识常用列表缓存的状态更改的全局计数器。 |
GLOBALCOUNTER_PRIVATE_PROFILE_CACHE_MACHINEWIDE全局计数器状态,计算机范围。 |
GLOBALCOUNTER_ASSOCCHANGED全局计数器,用于标识 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer 的当前 GlobalAssocChangedCounter 注册表值。 |
GLOBALCOUNTER_APP_ITEMS_STATE_STORE_CACHE在 Windows 8 中引入。 用于标识应用商店是否为当前存储的全局计数器。 |
GLOBALCOUNTER_SETTINGSYNC_ENABLED在 Windows 8 中引入。 用于确定同步是启用还是禁用的全局计数器。 |
GLOBALCOUNTER_APPSFOLDER_FILETYPEASSOCIATION_COUNTER在 Windows 8 中引入。 用于标识 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ImmersiveShell\StateStore 的当前 FTACounter 注册表值的全局计数器。 |
GLOBALCOUNTER_USERINFOCHANGED在 Windows 8 中引入。 用于标识用户信息更改状态的全局计数器。 |
GLOBALCOUNTER_SYNC_ENGINE_INFORMATION_CACHE_MACHINEWIDE在 Windows 8.1 中引入。 用于标识同步引擎计数器状态的全局计数器,计算机范围。 |
GLOBALCOUNTER_BANNERS_DATAMODEL_CACHE_MACHINEWIDE |
GLOBALCOUNTER_MAXIMUMVALUE任何共享变量可以具有的最大值。 |
注解
这些全局计数器是共享变量,可帮助确定 Windows 组件的状态是否随时间而更改。 它们可与以下函数一起使用: SHGlobalCounterDecrement、 SHGlobalCounterIncrement、 SHGlobalCounterGetValue。
示例
以下伪代码示例演示如何使用全局计数器。void ValidateSomeSettings()
{
// Get the current GLOBALCOUNTER_SHELLSETTINGSCHANGED value.
long lGlobalSettingsCounter = SHGlobalCounterGetValue(GLOBALCOUNTER_SHELLSETTINGSCHANGED);
// Do some other work
...
// Verify whether the Shell settings have changed since entering this method.
if (lGlobalSettingsCounter == SHGlobalCounterGetValue(GLOBALCOUNTER_SHELLSETTINGSCHANGED))
{
// Commit the work that was done earlier
...
}
else
{
// Shell settings have changed. Rollback and redo.
...
}
}
要求
| 要求 | 值 |
|---|---|
| 最低受支持的客户端 | Windows 7 [仅限桌面应用] |
| 最低受支持的服务器 | Windows Server 2008 R2 [仅限桌面应用] |
| 标头 | shlwapi.h |