2009-06-26 8 views
0

Windows XPのXAMPPでPHPスクリプトを実行していて、.docファイルを開いて別のコピーとして保存しています。これは初期段階でうまくいきましたが、どこからでもエラーメッセージが表示され続けます。SaveASが "ディスクがいっぱいです"というエラーが発生しました。エラー

$path = "c:/xampp/htdocs/"; 
com_load_typelib('Word.Application'); 
$word = new COM("word.application") or die("Unable to instantiate Word"); 

$word->Documents->Open($path."tmp/invoice.doc"); 

$bookmarkname = "InvoiceNo"; 
$objBookmark = $word->ActiveDocument->Bookmarks($bookmarkname)->Range->Text = "INVOICE ID"; 

$word->Documents[1]->SaveAs($path."tmp/invoice2.doc"); 
$word->ActiveDocument->Close(false); 
$word->Quit(); 
$word = null; 

数時間前に動作していたコードが問題ではないと感じましたが、現在はisntです。私はそれが私のWord 2003と何か関係があると思う、おそらく何かがそれをバグアウトさせた。

マイクロソフトのWebサイトに記載されているように、一時的なフォルダをクリアしてリブートを試みました。

file_put_contentsを使用してもフォルダに書き込むことができます。したがって、$ word-> Documents [1]から生データを抽出できる場合はMAYBEとし、Wordの保存関数を使用する代わりにfile_put_contentsを使用して保存します。問題は、これが非常によく文書化されていないので、私が利用できる利用可能な関数のリストを見つけることができないということです。

+0

$パスとは?それはおそらくネットワーク共有であり、あなたが制御権を持っておらず、書き込み権限を失っているのでしょうか? –

+0

申し訳ありませんが、私の設定ファイルのthats。私は今、ファイルを編集しました –

答えて

3

私はこの問題を自分で解決したようです。

これをRTFで保存してから、このクラスを使用して.doc形式に変換しましたが、もう少し長くかかるようですが、問題は解決しました。

リンク:とにかく見ているためhttp://www.phpclasses.org/browse/file/1256.html

みんなありがとう。 Jamie

関連する問題