| 分類:[C#]
2006/04/19(Wed) 17:47:20 編集(投稿者)
こんにちは。Soony@検証作業真っ最中 です。
先日アドバイスいただいたものを、片っ端から行ってみました。
まず、イベントビューアには、アプリケーション、システム、イベントともに、 なにも出力されていませんでした。
FileMonも使ってみました。 ログにSuccessedも含めると、えらい量になるので、チェックをはずしていますが、 情報としては足らないのでしょうか? Log errorsだけにしてしまうと、上書き保存時に何も出力されないので、 Opens, Reads, Writes にもチェックを入れています
それで、まず、、、ログの見方がよくわからずで、 Attribute Errorなどが出ているので、何かしらのファイルアクセスエラーになっているのは わかったのですが、これが権限などに影響しているのかどうか・・・判別ができずにいます。
かなり長くごちゃごちゃと書きなぐってしまいましたが、 以下、検証結果になります。
もし、なにかおかしな部分がありましたら、ご教授願えないでしょうか。
■ファイルのセキュリティ権限 コピー元(hoge.xls、\\ネットワーク上のファイルサーバ\共有フォルダ) Administrator (SERVER\Administrator) Everyone SYSTEM Users (SERVER\Users) ※すべてフルコントロール \\ネットワーク上のファイルサーバー\共有フォルダ\ のフォルダの権限も同様に、 Administrator (SERVER\Administrator) Everyone SYSTEM Users (SERVER\Users) ※すべてフルコントロール
File.Copy("hoge.xls", "hoge_copy.xls", true)でコピー直後の、 ローカルPC\hoge_copy.xlsの権限 Everyone (フルコントロールになっているが、グレー表示) また、このファイルを開くことはできるが、上書き保存はできない。 また、このhoge_copy.xlsファイルを別フォルダにコピーしても やはり上書き保存はできない。
生成ファイル(hoge_make.xls、ローカルPC、アプリケーションによって作成)
■エラー時のエラーの種類 System.Runtime.InteropServices.COMException COMException.Message = "ファイルを保存できませんでした。" #エラーオブジェクトのクイックウォッチも添付しておきます。
■ファイルアクセスモニタリング(FileMon)ログ File.Copy("hoge.xls", "hoge_copy.xls", true) でコピー直後のログは、
17:00:55 devenv.exe:3496 DIRECTORY D:\Hoge_soft NOTIFY ENUM DIR Change Notify 17:00:55 devenv.exe:3496 DIRECTORY D:\Hoge_soft NOTIFY ENUM DIR Change Notify 17:00:55 devenv.exe:3496 DIRECTORY D:\Hoge_soft Change Notify
objBook.Close(true, "hoge_make.xls", true); を実行した結果、以下のようなログは、
0.00002542 EXCEL.EXE:3832 DIRECTORY D:\Hoge_soft\bin\Debug\Temp\ NO SUCH FILE FileBothDirectoryInformation: hoge_make.xls 0.00002486 EXCEL.EXE:3832 DIRECTORY D:\Hoge_soft\bin\Debug\Temp\ NO SUCH FILE FileBothDirectoryInformation: hoge_make.xls 0.00002877 EXCEL.EXE:3832 QUERY INFORMATION D:\Hoge_soft\bin\Debug\Temp\hoge_make.xls NOT FOUND Attributes: Error 0.00003380 EXCEL.EXE:3832 QUERY INFORMATION D:\Hoge_soft\bin\Debug\Temp\hoge_make.xls NOT FOUND Attributes: Error 0.00003967 EXCEL.EXE:3832 QUERY INFORMATION D:\Hoge_soft\bin\Debug\Temp\95477000 NOT FOUND Attributes: Error 0.00003101 EXCEL.EXE:3832 OPEN D:\Hoge_soft\bin\Debug\Temp\95477000 NOT FOUND Options: Open Access: All 0.00000726 EXCEL.EXE:3832 READ C:\Documents and Settings\Hoge_User\Local Settings\Temporary Internet Files\Content.MSO\3FDE6FFB.emf END OF FILE Offset: 2696 Length: 8192 0.00001453 devenv.exe:3496 DIRECTORY D:\Hoge_soft NOTIFY ENUM DIR Change Notify 0.08655653 devenv.exe:3496 DIRECTORY D:\Hoge_soft NOTIFY ENUM DIR Change Notify 0.06760077 devenv.exe:3496 DIRECTORY D:\Hoge_soft NOTIFY ENUM DIR Change Notify 0.00003967 EXCEL.EXE:3832 QUERY INFORMATION D:\Program Files\Microsoft Office\OFFICE11\CRTDLL.dll NOT FOUND Attributes: Error 0.04650731 devenv.exe:3496 DIRECTORY D:\Hoge_soft NOTIFY ENUM DIR Change Notify 0.00004470 EXCEL.EXE:3832 QUERY INFORMATION D:\Program Files\Microsoft Office\OFFICE11\vba232me.dll NOT FOUND Attributes: Error 0.00003799 EXCEL.EXE:3832 QUERY INFORMATION C:\WINDOWS\system32\vba232me.dll NOT FOUND Attributes: Error 0.00001928 EXCEL.EXE:3832 QUERY INFORMATION C:\WINDOWS\system\vba232me.dll NOT FOUND Attributes: Error 0.00002738 EXCEL.EXE:3832 QUERY INFORMATION C:\WINDOWS\vba232me.dll NOT FOUND Attributes: Error 0.00002486 EXCEL.EXE:3832 QUERY INFORMATION C:\Documents and Settings\Hoge_User\My Documents\vba232me.dll NOT FOUND Attributes: Error 0.00002291 EXCEL.EXE:3832 QUERY INFORMATION C:\WINDOWS\system32\vba232me.dll NOT FOUND Attributes: Error 0.00002011 EXCEL.EXE:3832 QUERY INFORMATION C:\WINDOWS\vba232me.dll NOT FOUND Attributes: Error 0.00002542 EXCEL.EXE:3832 QUERY INFORMATION C:\WINDOWS\System32\Wbem\vba232me.dll NOT FOUND Attributes: Error 0.00004163 EXCEL.EXE:3832 QUERY INFORMATION C:\VBABG32.OLB NOT FOUND Attributes: Error 0.00002542 EXCEL.EXE:3832 OPEN C:\VBABG32.OLB NOT FOUND Options: Open Access: All 0.00002375 EXCEL.EXE:3832 QUERY INFORMATION C:\VBABG32.OLB NOT FOUND Attributes: Error 0.00002794 EXCEL.EXE:3832 QUERY INFORMATION D:\Program Files\Microsoft Office\OFFICE11\VBABG32.OLB NOT FOUND Attributes: Error 0.00002235 EXCEL.EXE:3832 QUERY INFORMATION C:\Documents and Settings\Hoge_User\My Documents\VBABG32.OLB NOT FOUND Attributes: Error 0.00003017 EXCEL.EXE:3832 QUERY INFORMATION C:\WINDOWS\system32\VBABG32.OLB NOT FOUND Attributes: Error 0.00002011 EXCEL.EXE:3832 QUERY INFORMATION C:\WINDOWS\system\VBABG32.OLB NOT FOUND Attributes: Error 0.00002319 EXCEL.EXE:3832 QUERY INFORMATION C:\WINDOWS\VBABG32.OLB NOT FOUND Attributes: Error 0.00002179 EXCEL.EXE:3832 QUERY INFORMATION C:\WINDOWS\system32\VBABG32.OLB NOT FOUND Attributes: Error 0.00001844 EXCEL.EXE:3832 QUERY INFORMATION C:\WINDOWS\VBABG32.OLB NOT FOUND Attributes: Error 0.00002235 EXCEL.EXE:3832 QUERY INFORMATION C:\WINDOWS\System32\Wbem\VBABG32.OLB NOT FOUND Attributes: Error 0.00002822 EXCEL.EXE:3832 OPEN C:\Documents and Settings\Hoge_User\My Documents\VBABG32.OLB NOT FOUND Options: Open Access: All 0.00002235 EXCEL.EXE:3832 QUERY INFORMATION C:\Documents and Settings\Hoge_User\My Documents\VBABG32.OLB NOT FOUND Attributes: Error 0.00001509 devenv.exe:3496 DIRECTORY D:\Hoge_soft NOTIFY ENUM DIR Change Notify 0.08477446 devenv.exe:3496 DIRECTORY D:\Hoge_soft NOTIFY ENUM DIR Change Notify 0.00000475 EXCEL.EXE:3832 UNLOCK C:\Documents and Settings\Hoge_User\Application Data\desktop.ini RANGE NOT LOCKED Offset: 0 Length: -1 0.00000475 EXCEL.EXE:3832 UNLOCK C:\Documents and Settings\Hoge_User\Application Data\desktop.ini RANGE NOT LOCKED Offset: 0 Length: -1 0.00000503 EXCEL.EXE:3832 UNLOCK C:\Documents and Settings\Hoge_User\Application Data\desktop.ini RANGE NOT LOCKED Offset: 0 Length: -1 0.00000447 EXCEL.EXE:3832 UNLOCK C:\Documents and Settings\Hoge_User\Application Data\desktop.ini RANGE NOT LOCKED Offset: 0 Length: -1 0.00000503 EXCEL.EXE:3832 UNLOCK C:\Documents and Settings\Hoge_User\Application Data\Microsoft\Office\Recent\desktop.ini RANGE NOT LOCKED Offset: 0 Length: -1 0.00000447 EXCEL.EXE:3832 UNLOCK C:\Documents and Settings\Hoge_User\Application Data\Microsoft\Office\Recent\desktop.ini RANGE NOT LOCKED Offset: 0 Length: -1 0.00000475 EXCEL.EXE:3832 UNLOCK C:\Documents and Settings\Hoge_User\Application Data\Microsoft\Office\Recent\desktop.ini RANGE NOT LOCKED Offset: 0 Length: -1 0.00003073 EXCEL.EXE:3832 DIRECTORY C:\Documents and Settings\Hoge_User\Application Data\Microsoft\Office\Recent\ NO SUCH FILE FileBothDirectoryInformation: Temp 0.00003324 EXCEL.EXE:3832 QUERY INFORMATION C:\Documents and Settings\Hoge_User\Application Data\Microsoft\Office\Recent\Temp.LNK NOT FOUND Attributes: Error 0.00000698 EXCEL.EXE:3832 QUERY INFORMATION D:\Hoge_soft\bin\Debug\Temp BUFFER OVERFLOW FileAllInformation 0.00001453 EXCEL.EXE:3832 OPEN D:\Hoge_soft\bin\Debug IS DIRECTORY Options: Open Access: All 0.00003743 EXCEL.EXE:3832 QUERY INFORMATION C:\Documents and Settings\Hoge_User\Application Data\Microsoft\Office\Recent\Temp.LNK NOT FOUND Attributes: Error 0.00002598 EXCEL.EXE:3832 QUERY INFORMATION C:\Documents and Settings\Hoge_User\Application Data\Microsoft\Office\Recent\Temp.LNK NOT FOUND Attributes: Error 0.00000670 EXCEL.EXE:3832 UNLOCK C:\Documents and Settings\Hoge_User\Application Data\Microsoft\Office\Recent\index.dat RANGE NOT LOCKED Offset: 0 Length: -1 0.00000615 EXCEL.EXE:3832 UNLOCK C:\Documents and Settings\Hoge_User\Application Data\Microsoft\Office\Recent\index.dat RANGE NOT LOCKED Offset: 0 Length: -1 devenv.exe:3496 DIRECTORY D:\Hoge_soft Change Notify
ただ、、、いまさら気がついたのですが、 単にファイルサーバーからhoge.xlsをエクスプローラでローカルPCにコピーしてExcelで開き、 上書き保存してみたところ、同様に「ファイルを保存できませんでした。」というエラーになりました。
この上書き保存時に出力されたログが、これです。 (・・・errorタイプのログに、hoge.xlsが見つからないんですが・・・)
17:04:03 EXCEL.EXE:1540 QUERY INFORMATION C:\Documents and Settings\Hoge_User\Local Settings\Temporary Internet Files\Content.MSO\13CDCF89.emf BUFFER OVERFLOW FileAllInformation 17:04:08 EXCEL.EXE:1540 QUERY INFORMATION D:\Test\D31F7000 NOT FOUND Attributes: Error 17:04:08 EXCEL.EXE:1540 OPEN D:\fm2005\D31F7000 NOT FOUND Options: Open Access: All 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION D:\Program Files\Microsoft Office\OFFICE11\vba232me.dll NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\WINDOWS\system32\vba232me.dll NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\WINDOWS\system\vba232me.dll NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\WINDOWS\vba232me.dll NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\Documents and Settings\Hoge_User\My Documents\vba232me.dll NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION D:\Program Files\Microsoft Office\OFFICE11\vba232me.dll NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\WINDOWS\system32\vba232me.dll NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\WINDOWS\vba232me.dll NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\WINDOWS\System32\Wbem\vba232me.dll NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\VBABG32.OLB NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 OPEN C:\VBABG32.OLB NOT FOUND Options: Open Access: All 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\VBABG32.OLB NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION D:\Program Files\Microsoft Office\OFFICE11\VBABG32.OLB NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\Documents and Settings\Hoge_User\My Documents\VBABG32.OLB NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\WINDOWS\system32\VBABG32.OLB NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\WINDOWS\system\VBABG32.OLB NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\WINDOWS\VBABG32.OLB NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION D:\Program Files\Microsoft Office\OFFICE11\VBABG32.OLB NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\WINDOWS\system32\VBABG32.OLB NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\WINDOWS\VBABG32.OLB NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\WINDOWS\System32\Wbem\VBABG32.OLB NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 OPEN C:\Documents and Settings\Hoge_User\My Documents\VBABG32.OLB NOT FOUND Options: Open Access: All 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\Documents and Settings\Hoge_User\My Documents\VBABG32.OLB NOT FOUND Attributes: Error 17:04:09 EXCEL.EXE:1540 QUERY INFORMATION C:\Documents and Settings\Hoge_User\Local Settings\Temporary Internet Files\Content.MSO\13CDCF89.emf BUFFER OVERFLOW FileAllInformation
|