Unity调用Win.ShellExecute .API

本文介绍了如何通过C#调用WinApi的ShellExecute函数来打开包含宏的Excel文件,以便宏能够正常执行。当直接通过C#代码打开Excel时宏无法加载,但使用ShellExecute函数可以解决这个问题。文中详细解释了ShellExecute函数的参数及用法,并提供了C#代码示例,展示了如何以特定模式打开文件。

背景:通过 C# 代码打开 Excel 时,Excel 内包含的宏无法正常加载,但是通过鼠标打开时,宏加载正常,因此想到可以通过 WinApi 来打开文件。

官网地址:https://docs.microsoft.com/zh-cn/windows/win32/api/shellapi/nf-shellapi-shellexecutea

API参考手册:Windows API 参考手册

参考链接:

C# 调用 WinApi 中 ShellExecute 打开 Excel 的方法 - 道长1 - 博客园

Unity C#在Windows/PC平台下打开某个文件夹/打开某个exe/带参数/含中文路径不乱码(Windows API/ShellExecute)_林新发的博客-优快云博客


 

WinApi 中 ShellExecute 的功能是运行一个外部程序(或者是打开一个已注册的文件、打开一个目录、打印一个文件等等),并对外部程序有一定的控制。函数如下:

IntPtr ShellExecute(IntPtr hwnd, string lpOperation, string lpFile, string lpParameters, string lpDirectory, ShowCommands nShowCmd);

参数说明:

hwnd:指定父窗口句柄,未指定时可以为 null 或者为 0
lpOperation:指定操作, 值可以为【open】、【print】、【explo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值