使用“Microsoft Ecosystem Metadata Exchange (EMX)”工具(这是用于注册 Windows 错误报告的应用程序的工具),尝试扫描任何文件会将以下消息记录到“应用程序日志”系统日志中:
Message : [Microsoft.Telemetry.MetadataExchange.SystemFileMetadataProvider: 56593614]: Unable to scan the given file due to the following exception:
System.Runtime.InteropServices.COMException (0x80070522): A required privilege is not held by the client. (Exception from HRESULT:
0x80070522)
at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)
at Microsoft.Telemetry.MetadataExchange.CrossProcessFileScanner.ScanFile(String path)
at Microsoft.Telemetry.MetadataExchange.SystemFileMetadataProvider.GetMetadata(String filePath)
__________________________________________________________________________________________________________________________________________
__________________
Logged at Microsoft.Telemetry.MetadataExchange.FileMetadataScanner.Scan()
at Microsoft.Telemetry.MetadataExchange.Presentation.ScanProgressDialogModel.worker_DoWork(Object sender, DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)
at System.Runtime.Remoting.Proxies.AgileAsyncWorkerItem.ThreadPoolCallBack(Object o)
at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
at System.Threading.ThreadPoolWorkQueue.Dispatch()
at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()
我使用 EMX 的 powershell 绑定(bind)得到了相同的结果。
如果我从提升命令提示符运行 powershell 绑定(bind)的工具本身,它确实可以工作。
我认为这是最近的问题(Windows 10?),如 the documentation没有提到这个问题,而且工具本身启动时也没有报错。
要求提升的限制在 Windows 10 中是否已发生变化,我是否可以通过某种方式解决? (即,我可以在不提升的情况下使其以某种方式工作吗?)
最佳答案
我确实从 Microsoft 支持部门得到了答复:
We are aware of this. It was not expected but, depending the outcome of my investigation, running elevated may become the official method.
我认为这意味着,目前该问题没有真正的解决方法,您只需以管理员身份运行 EMX。
关于windows-error-reporting - 为什么 Microsoft 生态系统元数据交换需要在 Windows 10 上提升管理员权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38887517/