使用c#程序打开windows软件

项目场景:

某些时刻我们可能需要定时去打开我们系统(仅限windows)中的软件,如记事本或者notepad或者visual studio,vscode 等等


问题描述

如何使用c#程序打开windows软件,

以下我们使用 .net 8版本

创建一个控制台程序展示

方式一

cs 复制代码
using System;
using System.Diagnostics;
using System.Reflection;
using System.Text;

// 获取进程句柄
Process process = new Process();
process.StartInfo.FileName = "notepad.exe";

process.StartInfo.Arguments = @"E:\Project\config.json";
process.Start();
IntPtr processHandle = process.Handle;
Console.WriteLine($"进程句柄: {processHandle}");

// 可以在这里进行其他与进程相关的操作,如监控进程状态等

// 等待进程结束
process.WaitForExit();

这里展示用记事本打开一个json文件,前提是这个文件路径是正确的,否则他会提示

当然还可以打开其他文件

方式二

代码是这样的

cs 复制代码
using System;
using System.Diagnostics;
using System.Reflection;
using System.Text;

// 获取进程句柄
Process process = new Process();
process.StartInfo.FileName = @"E:\新服务器.xlsx";
process.StartInfo.UseShellExecute = true; // 必须为true才能通过关联程序打开
process.Start();
IntPtr processHandle = process.Handle;
Console.WriteLine($"进程句柄: {processHandle}");

// 可以在这里进行其他与进程相关的操作,如监控进程状态等

// 等待进程结束
process.WaitForExit();

这个代码process.StartInfo.UseShellExecute = true; 是关键 否则程序会提示找不到路径报错,打不开相应的文件

总结

使用 process.StartInfo.FileName = @$"{}"; //使用路径

process.StartInfo.UseShellExecute = true;

可以打开你想要的文件,如果只想用记事本打开你需要的文件使用第一种方式即可,

以下只是使用控制台方式,可以将此代码嵌入其他.net 项目 使用

相关推荐
周杰伦fans5 小时前
8GB显存下模型量化实战指南
人工智能·后端·c#
samble7 小时前
从零搭建灌装监控系统(十二):配置系统,原子写入与容错
c#·wpf·mvvm·modbus·工业控制
流形填表10 小时前
题库去重实战:基于题干指纹的重复题清理
开发语言·c#
开开心心就好16 小时前
以图搜图找重复图片,本地工具离线就能用
javascript·智能手机·ffmpeg·c#·ocr·word·音视频
QQ_216962909616 小时前
基于C#(Asp.net)电竞陪玩信息管理系统的设计与实现
java·大数据·spring boot·微信小程序·c#·云计算·asp.net
未来之窗软件服务1 天前
C# 截图源码支持自动保存-东方仙盟
c#·仙盟创梦ide·东方仙盟·电脑工具
UIU1142 天前
-7 / 2 在 C 里是 -3,在 Python 里是 -4,谁算错了?
c++·学习·c#
wflynn2 天前
GitHub 今日推荐|REDox:64 位 token 表示结构化数据,内存占用降 70% 支持多格式互转
开源·c#·github
驰骋工作流2 天前
C#/.NET 开源BPM工作流引擎6大常用对比选型分析驰骋BPM驰骋低代码低代码工作流引擎
开源·c#·.net
en.en..2 天前
C语言 fp与fd 区别详解
c#