c# - 访问被拒绝 Process.Start
问题描述
运行此代码时,我收到错误消息“权限被拒绝”。这个错误是由我的mac上的权限引起的还是因为代码?我使用了与 MSDN 相同的示例。
static void Main(string[] args)
{
Process.Start("readme.txt");
};
解决方案
Process.Start
接受可执行文件或文档的名称。根据文档:
文件名不需要代表可执行文件。它可以是扩展名与系统上安装的应用程序相关联的任何文件类型。例如,如果您将文本文件与记事本等编辑器关联,则文件名可以具有 .txt 扩展名,或者如果您将 .doc 文件与诸如 Microsoft Word 的文字处理工具关联,则文件名可以具有 .doc 扩展名。
此描述可能仅限于 Windows 平台。我猜想 macOS 上的实现仅限于运行可执行文件。
如果您想使用 MacOS 的默认编辑器,那么您应该能够按如下方式运行它:
Process.Start("open", "readme.txt")
请记住,这open
是一个特定于 MacOS 的实用程序,因此它不适用于其他操作系统。
推荐阅读
- python - 可被任何给定数整除的回文数
- c# - 如何限制datalist中的单词数?
- xml - 多语言页面的 sitemap.xml
- angular - 如何以角度显示从api获取的数据
- python - bazel 构建 tensorflow/tools/graph_transforms:transform_graph 错误
- android - 为什么 Gluon Mobile 应用程序的 iOS 版本比 Android 的相同应用程序版本大 10 倍?
- c++ - 如果代码正确,为什么我在 OK 按钮上会出现这些错误?
- python - 使用 joblib 和 SLURM 在 Python 中并行化 for 循环
- php - 带有特殊字符的电话号码的正则表达式
- java - 使用 Firebase 适配器将新项目移动到回收站视图的顶部