c# - 通过VBA执行批处理文件写入文件不起作用
问题描述
我的 VBA 代码运行一个批处理文件,该文件调用一个可执行文件(C# 应用程序)。此 exe 用于从数据源导出数据并将其写入在当前目录的子文件夹中创建的文件中。当我运行此代码时,它会启动命令提示符并调用 exe,但此 exe 不会在我的子文件夹中创建文件。当我手动运行这个 exe 时,它成功地完成了这项工作。
这是运行批处理文件的 VBA 代码:
Call Shell("C:\Users\Administrator\Desktop\ClientApp\ExportData.exe 0", vbNormalFocus)
而且,这是来自 C# 应用程序的代码,它创建一个文件并将结果写入其中:
File.WriteAllText(Directory.GetCurrentDirectory() + "\\temp.bat", command + columnKeys);
var process = Process.Start(Directory.GetCurrentDirectory() + "\\temp.bat");
process.WaitForExit();
C# 代码调用的批处理从数据源导出数据,并将其写入子文件夹中的 csv 文件。
我无法理解我需要在哪里进行更改 - 无论是在 VBA 代码中还是在 C# 代码中 - 以便代码可以写入文件。我该如何解决这个问题?
解决方案
推荐阅读
- google-bigquery - 访问 DataStudio 报告上的安全 GCS 图像
- laravel - Laravel 多列上的多对多同步()
- java - Java / Unix:如果另一个进程尝试在其间读取文件,一个进程能否成功写入文件
- python - AES 解密输出到字符串
- javascript - 如何防止feathers.js返回用户路由中的所有用户
- java - Java 中有没有办法将 Gherkin 文档格式化为字符串?
- c# - 尽管 csproj 中有 HintPath 和 ReferencePath,但 C# 项目无法找到参考
- haskell - `type` 与 phantom 的同义词不允许出现警告?
- r - 将 for 循环转换为映射
- spring-security - 具有自定义属性的 Spring Boot oAuth2 响应