【发布时间】:2018-10-10 16:11:38
【问题描述】:
在工作中,我们使用 Azure 函数来完成简单的任务。
要调试或运行该函数,您需要一个正在运行的 Azure 存储模拟器。
问题是我们的开发者账户没有管理员权限,所以我们不能自己启动模拟器。 现在我们通过要求管理员为我们启动它来解决这个问题,但这仅在您重新启动/关闭机器之前有效。 我们尝试了很多方法让模拟器为每个用户启动(就好像它是由管理员运行的一样),但没有任何效果。
这是我们尝试过的方法之一。一个在启动时运行并启动模拟器的简单程序。如果您以管理员身份手动启动它,它会完成这项工作,并且模拟器会毫无问题地启动。 但是当计划在启动或登录时启动(使用管理员帐户)时,它会启动它,但仅适用于管理员帐户而不是当前用户。
我们在启动时运行的程序的代码:
internal class Program
{
private static void Main(string[] args)
{
System.Diagnostics.Process process = new System.Diagnostics.Process();
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal;
startInfo.FileName = @"C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator\AzureStorageEmulator.exe";
startInfo.Arguments = "start";
process.StartInfo = startInfo;
process.Start();
}
}
您对如何解决上述问题有任何想法或建议吗?
P.S:我已经搜索了 StackOverflow 上发布的相关主题以寻找同类问题,但他们没有太多帮助,或者用例不同。
:)
【问题讨论】:
-
只是想澄清一下。 1.你是如何添加管理员权限的? , 2. 对于“不为当前用户”,是不是意味着在任务管理器中,它运行在管理员账户而不是开发者账户下?```
-
管理员在任务调度器中设置了任务,是的,它只为他运行
-
还有一件事,你只是想在机器(机器或你的程序,请帮助澄清)启动时启动模拟器并在普通用户下运行,对吧?
-
是的,我希望它为我运行
标签: c# azure azure-storage-emulator