2

現在、.MPPファイル(Microsoft Projectファイル)を含むフォルダーを入力として受け取り、情報を再フォーマットし、変換された各ファイルを新しいフォルダー(ユーザーが選択)に分割するプログラムがあります。

問題は、アプリケーションが処理する各ファイルがタスク バーに表示され、蓄積されることです。したがって、ディレクトリに N 個のファイルがある場合、N 個のプロジェクト ファイルが開かれます。これらのタスクを非表示にする方法を知っている人はいますか? もともと、visible プロパティはデフォルトで true に設定されていると思っていましたが、明示的に false に設定した後でも問題が発生します。

projectApp.Visible = false;

これが私のアプリケーションの擬似コードです

For each File in Folder
    Open File
    Format File
    Save As File
End for each
Quit application

これが私が渡したopenおよびsaveパラメーターです(それがまったく役立つ場合)Open:

projectApp.FileOpen(txtBrowse.Text + @"\" + file.Name, false, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, PjPoolOpen.pjDoNotOpenPool, missingValue, missingValue, true, missingValue);

保存:

projectApp.FileSaveAs(txtSave.Text + @"\" + file.Name, PjFileFormat.pjMPP, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue, missingValue);

とmissingValueはType.Missing

追加情報があればお気軽にリクエストしてください。ご協力ありがとうございます。

PS 私は Microsoft.Office.Interop.MSProject 参照を使用しています

4

2 に答える 2

1

私はそのインターフェースに精通していませんが、FileSaveAsの直後のループの最後の行としてFileCloseを実行したいと思うようです。

于 2010-07-22T17:25:57.947 に答える
1

私はあなたと同じ問題を抱えていました。最初、ファイルを保存できませんでした。しかし、コードを別のディレクトリで再度テストした後、機能しましたが、あなたのようなプロジェクト ファイルを閉じませんでした。他の人が述べたように、解決策は非常に簡単です。ファイルを閉じるのを忘れました。次の行でファイルを閉じます。

projectApp.FileClose(PjSaveType.pjSave, missingValue);
于 2011-04-21T00:53:27.930 に答える