wordApp.Documents.Open地址指向了C://windows/system32

问题描述

之前做过一个程序,当时给wordApp.Documents.Open方法的地址是一个绝对地址,指向E盘的一个地方服务器经多人调戏后程序出错了,调试后发现wordApp.Documents.Open方法执行后抛出异常,文件无法获取,地址变成了C:\WINDOWS\system32\E\...毫无头绪,求大神们赐教

解决方案

解决方案二:
把地址改回正确的不就行了。。。
解决方案三:
引用1楼jun471537173的回复:

把地址改回正确的不就行了。。。

地址没有改过啊,给wordApp.Documents.Open的地址还是原来那个啊,是wordApp.Documents.Open内部执行的时候发生了改变,方法不执行不报错,一执行马上抛出异常
解决方案四:
环境变量管理员执行就是那个路径
解决方案五:
引用3楼FoxDave的回复:

环境变量管理员执行就是那个路径

没大明白,为啥这个方法会和环境变量有关系?有什么办法恢复成原来直接读取绝对地址的样子嘛?
解决方案六:
C:\WINDOWS\system32\E\你这E后面少了个冒号吧?所以就认为是相对地址了
解决方案七:
多人调戏服务器?windows下微软的产品本来就是对于进程的“打开”功能习惯性地,都是要记忆“上一次打开文件的路径”的。微软在2006年以后经历了以此劫难,因此产品的传统不再尊重了。但是之前的主要产品还是比较尊重传统的。我们可以推断的是,如果你使用Word.Documents.Open语句打开文档时使用的不是绝对路径,那么就是从当时的用户上一次打开文件的地址开始查找,而不是永远都从你安装应用程序的那个路径开始查找。你在应用中,应该给相对文件路径计算为绝对路径,再去调用word。
解决方案八:
引用楼主rzh505的回复:

之前做过一个程序,当时给wordApp.Documents.Open方法的地址是一个绝对地址,

贴出实际的测试截屏,把这个当“地址”调试一下,截屏中能看一下所调试的代码。

时间: 2024-10-22 19:18:17

wordApp.Documents.Open地址指向了C://windows/system32的相关文章

WordApp.Documents.Add( ); 不能返回对象,

问题描述 想用C#操作Word,代码执行到下面第二句时报标题的那个错,Word.ApplicationWordApp=newWord.ApplicationClass();Word.DocumentWordDoc=WordApp.Documents.Add(refNothing,refNothing,refNothing,refNothing);问题是,我在一台机器上执行明明没有问题,为什么换了另一台机器就会出问题呢?请问问题出在哪?跟本地的OFFICE有关还是什么?两台机器都装了Office,

error PRJ0003 : 生成“C:\WINDOWS\system32\cmd.exe”时出错

最近使用visual studio 2005或visual studio 2008的编译项目时可能都遇到了这样的问题: error PRJ0003 : 生成"C:\WINDOWS\system32\cmd.exe"时出错 1>Project : error PRJ0003 : Error spawning 'C:\Windows\System32\cmd.exe'. 1>Build log was saved at "file://c:\Users\Gilbert

电脑开机提示找不到:c:\windows\system32\rundll32.exe文件问题解决办法

rundll32.exe是什么文件 rundll32.exe用于在内存中运行DLL文件,它们会在应用程序中被使用.这个程序对你系统的正常运行是非常重要的.注意:rundl132.exe和rundll32.exe相似.但是rundl132.exe是W32.Miroot.Worm病毒.该病毒允许攻击者访问你的计算机,窃取密码和个人数据.对该文件的建议是立即删除 故障现象: 电脑开机时,显示找不到:c:\windows\system32\rundll32.exe文件,也下载了新的rundll32文件,

Win7、Win8/8.1系统windows/system32/drives/etc的访问权限设置

1.按"Win+R"然后在弹出框我们输入 C:\WINDOWS\system32\drivers\,点击确定或者打开我们电脑复制这一字符串在地址栏回车也可以进入: 2.然后我们找到etc文件夹上右击然后点击"属性"选项,如下所示: 3.在进入到etc属性窗口,我们再点击"安全"-"编辑"然后找到"Users"(也就是你的登录用户名),把"允许"下面的选项全部勾选,点击确定: 同时记得去掉

08上半年十大恶意域名80%IP地址指向浙江

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 <2008年上半年互联网挂马报告>报告显示,2008上半年十大恶意域名列表中,就有80%的恶意域名的IP地址是指向浙江省的. 2008年网页木马急骤增长,专业化.团队式的木马制造者,在攫取巨额非法利益的同时,给广大网友的正常工作学习带来了很大的不便.使网友们的利益受到了极大的损失.巨额利润.第三方应用程序漏洞.社会工程学成为200

win7开机出现X:\Windows\system32\soudmax.dll出错提示问题解决

  1.首先,我们同时按下win7旗舰版电脑键盘上的win+R快捷键打开电脑的运行窗口,之后,我们在打开的运行窗口中输入regedit并单击回车,这样就可以打开win7旗舰版电脑的注册表编辑器窗口了. 2.在打开的注册表编辑器窗口中,我们依次点击展开左侧菜单中的HKEY_LOCAL_MACHINESOFTWAREMicrosoft WindowsCurrentVersionPolicies ExplorerRun,然后在其中找到soundmax.dll相关的启动项,之后,我们将这些相关选项全部删

mmc不能打开文件c:\windows\system32\compmgmt.msc

  今天突然想看看计算机管理,但是提示我MMC不能打开文件c:windowssystem32compmgmt.msc 当打开电脑中的"设备管理器.系统服务.计算机管理或磁盘整理碎片"只要是以扩展名为"MSC"结尾的文件,都是出现如下图所示的"MMC不能打开文件C:WINDOWSsystem32compmgmt.msc这可能是由于文件不存在,不是一个MMC控制台,或者用后来版本的MMC创建.也可能是由于您没有访问此文件的足够权限." 出现"

C#编程将C:\Windows\System32\winevt\Logs中的所有日志拷贝出来

问题描述 C#编程将C:WindowsSystem32winevtLogs中的所有日志拷贝出来 windows8除了ApplicationSystemSecurity日志之外,还有很多其他日志在winevtLogs中,我想把所有日志都拷贝到D盘的一个新建文件夹中,求大神指教!!! 解决方案 需要C#吗?写一个batcopy C:WindowsSystem32winevtLogs* D: 就可以了.在C#中调用这个bat脚本 解决方案二: C#中使用File.Copy()这个函数就可以拷贝了. 解

对路径“c:\windows\system32\inetsrv\201203161002528289_2.rar”的访问被拒绝。求解

问题描述 ErrorTime:2012-04-0913:48:43ErrorMsg:对路径"c:windowssystem32inetsrv001K71000000000049Z_2.rar"的访问被拒绝.WinIOErrormscorlib在System.IO.__Error.WinIOError(Int32errorCode,StringmaybeFullPath)在System.IO.FileStream.Init(Stringpath,FileModemode,FileAcce