我有一个.exe MapaReporting.exe
,它有一个.config文件MapaReporting.exe.config
,其中指定了一些静态参数(例如URL)。
如果我从CMD提示符运行.exe,它会执行应该执行的操作(将文件上载到SharePoint)。
这对我来说意味着.exe和.config正在完成他们的工作。
然后我尝试使用相关的system
指令与R调用相同的作业。我所做的事情的本质是由这个简短的脚本提供的(实际的事情涉及一个正确的功能,但下面的行是重要的):
currentDir <- getwd()
setwd("//UKLDNNAS902/RESTRICTED/Fund of Funds/Team/Matteo/R/SPUploader")
exeFile <- "MapaReporting.exe"
exeString <- "PhysicalLocation-C:\\DELETEME.xlsx filename-THISISATEST.xlsx FolderName-SFR ReportType-SFR ReportDate-12/12/2016 Fund-NAF PortfolioManager-A566848"
system(paste(exeFile, exeString))
setwd(currentDir)
但是我收到以下错误消息:
Site Url is missing in configuration file. at MapaReporting.Program.Main(String[] args)
这指出了这样一个事实:当使用CMD时,.exe会找到相关的.config,当我尝试使用相同的R时,会抛出该错误。我试图将系统调用封装在相关文件夹中,如您所见,我也尝试了system2
函数。
一切都没有成功。任何帮助都非常欢迎!谢谢。
更新:修改了脚本以指向本地文件夹,并根据以下Greg建议将wait = T
语句添加到system
语句,没有任何更改。
使用Process Monitor实用程序,这些是失败列表: