本文仅适用于在 Windows 电脑上运行的 iTunes 7.1 或更高版本。
系统管理员可以使用 Windows 版 iTunes 中的家长、企业和教育控制功能来设置内容限制。
本文中的步骤使用注册表编辑器 (Regedit.exe) 对 Windows 注册表进行更改。即使您在注册表编辑器的使用方面很在行,也应该先备份注册表。如果您操作失误,可能会导致您的电脑出现问题,甚至会令 Windows 无法启动。
与家长控制相关的注册表项
有两个注册表项用于管理 Windows 版 iTunes 的家长控制。
在 Windows XP 和 32 位 Windows Vista、Windows 7、Windows 8 和 Windows 10 上
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\[SID]\Parental Controls
- HKEY_CURRENT_USER\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls
在 64 位 Windows Vista、Windows 7、Windows 8 和 Windows 10 上
- HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apple Computer, Inc.\iTunes\[SID]\Parental Controls
- HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Apple Computer, Inc.\iTunes\Parental Controls
调整家长控制的偏好设置
用户特定值 [SID] 是用户帐户安全标识符的字符串表示。通常,它显示为:S-1-5-21-1715567821-1202687629-839522115-1003。
每个用户帐户都有不同的用户特定值 [SID]。因此,iTunes 能够在 HKEY_LOCAL_MACHINE 中为每位用户储存唯一的家长控制偏好设置。要设置由新用户帐户继承的家长控制偏好设置,请在以下注册表项下创建这些偏好设置。
在 Windows 32 位系统上
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default
在 Windows 64 位系统上
- HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apple Computer, Inc.\iTunes\Parental Controls\Default
如果用户特定的 [SID] 值不存在,iTunes 8.0.2 及更高版本将使用这些注册表项下的值。
iTunes 将家长控制偏好设置储存在五个注册表值中。当家长控制已锁定时,iTunes 会使用下列值:
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\[SID]\Parental Controls\AdminFlags
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\[SID]\Parental Controls\AdminMoviesLimit
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\[SID]\Parental Controls\AdminTVShowsLimit
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\[SID]\Parental Controls\AdminRatingSystemID
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\[SID]\Parental Controls\AdminGamesLimit
如果用户特定的 [SID] 值不存在,iTunes 8.0.2 及更高版本将使用下列值:
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminFlags
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminMoviesLimit
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminTVShowsLimit
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminRatingSystemID
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminGamesLimit
在家长控制解锁后,iTunes 将使用下列值:
- HKEY_CURRENT_USER\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\UserFlags
- HKEY_CURRENT_USER\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\UserMoviesLimit
- HKEY_CURRENT_USER\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\UserTVShowsLimit
- HKEY_CURRENT_USER\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\UserRatingSystemID
- HKEY_CURRENT_USER\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\UserGamesLimit
UserFlags 和 AdminFlags 的值
UserFlags 或 AdminFlags 名称 | 十六进制值 (仅在手动编辑用户注册表值时使用) |
十进制值 (仅在通过“组策略”部署注册表值时使用) |
备注 |
---|---|---|---|
kParentalFlags_Locked | 0x00000001 | 1 | |
kParentalFlags_DisablePodcasts | 0x00000002 | 2 | |
kParentalFlags_DisableMusicStore | 0x00000004 | 4 | |
kParentalFlags_DisableSharing | 0x00000008 | 8 | |
kParentalFlags_DisableExplicitContent | 0x00000010 | 16 | |
kParentalFlags_DisableRadio | 0x00000020 | 32 | 这个标志仅停用互联网广播,而不会停用 Apple Music 广播电台。 |
kParentalFlags_RestrictMovieContent | 0x00000040 | 64 | |
kParentalFlags_RestrictTVShowContent | 0x00000080 | 128 | |
kParentalFlags_DisableCheckForUpdates | 0x00000100 | 256 | |
kParentalFlags_RestrictGames | 0x00000200 | 512 | |
kParentalFlags_DisableAutomaticDeviceSync | 0x00000800 | 2048 | |
kParentalFlags_DisableGetAlbumArtwork | 0x00001000 | 4096 | |
kParentalFlags_DisablePlugins | 0x00002000 | 8192 | |
kParentalFlags_DisableOpenStream | 0x00004000 | 16384 | |
kParentalFlags_DisableAppleTV | 0x00008000 | 32768 | |
kParentalFlags_DisableDeviceRegistration | 0x00010000 | 65536 | |
kParentalFlags_DisableDiagnostics | 0x00020000 | 131072 | |
kParentalFlags_AllowITunesUAccess | 0x00040000 | 262144 | iTunes 8.1 中添加 |
kParentalFlags_RequireEncryptedBackups | 0x00080000 | 524288 | iTunes 8.2 中添加 |
kParentalFlags_DisableHomeSharing | 0x00100000 | 1048576 | iTunes 10 中添加 |
kParentalFlags_DisableCheckForAppUpdates | 0x00200000 | 2097152 | iTunes 10 中添加 |
kParentalFlags_DisableCheckForDeviceUpdates | 0x00400000 | 4194304 | iTunes 10 中添加 |
kParentlFlags_DisableFirstRunWelcomeWindow | 0x01000000 | 16777216 | iTunes 10.2 中添加 |
kParentalFlags_DisableDeviceFileSharing | 0x02000000 | 33554432 | iTunes 10.4 中添加 |
kParentalFlags_DisableExplicitBooks | 0x04000000 | 67108864 | iTunes 11.0 中添加 |
kParentalFlags_DisableDefaultPlayerDialog | 0x08000000 | 134217728 | iTunes 11.3 中添加 |
UserMoviesLimit、UserTVShowsLimit、AdminMoviesLimit 和 AdminTVShowsLimit 的值
这些注册表值未以公开方式记录。系统管理员通常只使用在 UserFlags 和 AdminFlags 注册表值中设置的家长控制偏好设置。
UserFlags、UserMoviesLimit 和 UserTVShowsLimit
这些注册表值表示已解锁的家长控制。由于它们是在 HKEY_CURRENT_USER 注册表项下设置的,因此无论用户是否拥有提升的权限,均可以向它们写入内容。由此可见,如果您想防止用户更改您设置的家长控制,就不应使用这些注册表值。
仅在以下情况下,iTunes 才会遵循 UserFlags、UserMoviesLimit、UserTVShowsLimit、UserRatingSystemID 以及 UserGamesLimit 注册表值中设置的限制:
- 没有为 HKEY_LOCAL_MACHINE 中的 AdminFlags 设置值
- AdminFlags 值中的 kParentalFlags_Locked 位设置为 0
AdminFlags、AdminMoviesLimit 和 AdminTVShowsLimit
这些注册表值表示已锁定的家长控制。由于它们是在 HKEY_LOCAL_MACHINE 注册项下设置的,因此用户需要拥有提升的权限才能向它们写入内容。
iTunes 会检查当前用户是否存在表明控制已锁定的 AdminFlags 值。如果存在,iTunes 将使用这个值,并忽略 HKEY_CURRENT_USER 下的任何 Userxxx 值。
这种情况下,如果控制已解锁,则 Adminxxx 值可能不会反映当前的家长控制设置。只有 Userxxx 值会被保留,而 AdminFlags 中的锁定控制仍保持最新。
预配置家长控制
要预配置家长控制,请在 HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\[SID]\Parental Controls 注册表项中为每个用户帐户设置三个注册表值。
为此,请使用以下任一方法:
- 使用 iTunes 来设置并锁定某个用户的家长控制偏好设置,然后在其他用户帐户安全标识符 (SID) 的注册表项下复制这个用户的值。执行这项操作之前,请确保您不需要设置任何无法从 iTunes 用户界面控制的标志。
- 使用注册表编辑器来设置家长控制值。
要为尚未创建或使用的用户帐户预配置家长控制,请设置下列值。
对于 32 位版本 Windows 上的 32 位版本 iTunes,或 64 位版本 Windows 上的 64 位版本 iTunes:
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminFlags
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminMoviesLimit
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminTVShowsLimit
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminRatingSystemID
- HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminGamesLimit
对于 64 位版本 Windows 上的 32 位版本 iTunes:
- HKEY_LOCAL_MACHINE\Wow6432Node\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminFlags
- HKEY_LOCAL_MACHINE\Wow6432Node\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminMoviesLimit
- HKEY_LOCAL_MACHINE\Wow6432Node\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminTVShowsLimit
- HKEY_LOCAL_MACHINE\Wow6432Node\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminRatingSystemID
- HKEY_LOCAL_MACHINE\Wow6432Node\SOFTWARE\Apple Computer, Inc.\iTunes\Parental Controls\Default\AdminGamesLimit
如果 HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\iTunes\[SID]\Parental Controls 中不存在帐户特定的注册表项,iTunes 将使用 HKEY_LOCAL_MACHINE\SOFTWARE\Apple Computer, Inc.\Parental Controls\Default 下的注册表项。
要防止受限用户更改家长控制,请确保在 AdminFlags 注册表项中设置 kParentalFlags_Locked 值。
设置以下标志时,请记住:
- 您无法在 iTunes 用户界面中设置这些标志。
- 仅当您设置了 kParentalFlags_Locked 注册表项时,才会强制执行这些标志设置。如果您不锁定 AdminFlags,iTunes 将忽略各项设置。
- 您必须在 AdminFlags 中设置这些标志。如果您在 UserFlags 中设置这些标志,则不会强制执行它们。
UserFlags 或 AdminFlags 名称 | 十六进制值 (仅在手动编辑用户注册表值时使用) |
十进制值 (仅在通过“组策略”部署注册表值时使用) |
---|---|---|
kParentalFlags_DisableCheckForUpdates |
0x00000100 |
256 |
kParentalFlags_DisableAutomaticDeviceSync |
0x00000800 |
2048 |
kParentalFlags_DisableGetAlbumArtwork |
0x00001000 |
4096 |
kParentalFlags_DisablePlugins |
0x00002000 |
8192 |
kParentalFlags_DisableOpenStream |
0x00004000 |
16384 |
kParentalFlags_DisableAppleTV |
0x00008000 |
32768 |
kParentalFlags_DisableDeviceRegistration |
0x00010000 |
65536 |
kParentalFlags_DisableDiagnostics |
0x00020000 |
131072 |
kParentalFlags_RequireEncryptedBackups |
0x00080000 |
524288 |
kParentalFlags_DisableHomeSharing |
0x00100000 | 1048576 |
kParentalFlags_DisableCheckForAppUpdates |
0x00200000 | 2097152 |
kParentalFlags_DisableCheckForDeviceUpdates |
0x00400000 | 4194304 |
例如,要停用“检查设备更新”设置,请将 kParentalFlags_Locked 和 kParentalFlags_DisableCheckForAppUpdates 的 AdminFlags 注册表值设置为 0x40000000。