2

我有一个正在构建的应用程序来关闭计算机

我尝试使用 System.Management;但它告诉我添加一个引用,我尝试使用此代码的添加引用列表中没有这样的东西,但进程有一个红色波浪

System.Diagnostics.Process.Start("Shutdown", "-s -t 10");

关于如何关闭的任何想法?

4

2 回答 2

1

对于像这样的神秘问题有一个简单的解释:您正在使用可移植类库或选择了“.NET for Metro 风格应用程序”平台目标。由于不允许使用 Process 类,Metro 应用程序在禁用许多标准 .NET 功能的沙箱中运行。不允许启动另一个进程或关闭操作系统,只有用户可以这样做。

如果这对您很重要,您将不得不放弃 Metro,您的应用程序需要作为桌面应用程序运行。并且不会在启动 Win8 的平板上运行。

于 2012-08-07T13:03:51.360 回答
0

我结束了

  1. 升级到最新的 Visual Studio 2015 SP3,
  2. 使用 powershell 运行 Scott Smith 的升级命令,

    powershell dnvm upgrade -r coreclr
    

    https://stackoverflow.com/a/34013990/80772

  3. 从 Visual Studio 重新创建控制台项目。

在添加了解析标准类所需的更多包后,我观察到了这个 global.json,

{
  "projects": [ "src", "test" ],
  "sdk": {
    "version": "1.0.0-preview2-003131"
  }
}

而这个project.json,

{
  "version": "1.0.0-*",
  "buildOptions": {
    "emitEntryPoint": true
  },

  "dependencies": {
    "Microsoft.NETCore.App": {
      "type": "platform",
      "version": "1.0.1"
    },
    "system.diagnostics.textwritertracelistener": "4.0.0-beta-23123",
    "System.Diagnostics.TraceSource": "4.0.0",
    "System.IO": "4.1.0"
  },

  "frameworks": {
    "netcoreapp1.0": {
      "imports": "dnxcore50"
    }
  }
}
于 2016-10-12T17:46:28.683 回答