我创建了一个服务,并使其运行为 LocalSystem
,因为我需要它独立于登录用户运行,并且该服务需要保存从套接字接收的密钥,并将其保存在文件系统或注册表中。保存文件或注册表项的最佳方式在哪里,使标准用户无法读取密钥?
找到了一种方法,使用文件系统在此处保存配置文件:
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)
该服务作为本地系统运行,因此它返回:
@"C:\Windows\system32\config\systemprofile\AppData\Roaming\"
并且只有系统或管理员可以访问它。
如果有人有理由不使用这种方式,或者有更好的方法,那也会很有帮助