2012-01-18 22 views
1

C#WinFormアプリケーションでExcelファイルを開き、Microsoft.Office.Interop.Excel.dllへの参照を追加し、DSO FRAMER CONTROLを使用しました。しかし、私は私が保護することができませんでしExcel.Butのためにこの仕事をしたい成功したと同じで、この読み取り専用保護でExcelファイルを開くには?

Word.Document wordDoc = (Word.Document)axFramerControl1.ActiveDocument; 
Word.Application wordApp = wordDoc.Application; 
wordDoc.Protect(Word.WdProtectionType.wdAllowOnlyReading); 

ようWORDアプリケーションのためにこれを行っている、読み取り専用protection.Iと私のExcelファイルを開きたいですそのようにExcelファイル。

string path = "C:\\test-wb.xlsx"; 
axFramerControl1.Open(path, true,"excel.sheet", "", ""); 

Excel._Workbook excelDoc =(Microsoft.Office.Interop.Excel._Workbook)axFramerControl1.ActiveDocument; 
Excel.Application excelApp =excelDoc.Application; 
//What code should i write to protect Excel Workbook with read - only. 
excelDoc.Protect(misval, true, misval);//It is not working. 

答えて

11

第三のパラメータ(ReadOnly)= trueOpenメソッドを呼び出します。

読み取り専用
オプションオブジェクト:

は、MSDN documentationを参照してください。ブックを読み取り専用モードで開く場合はTrueを指定します。

+0

:ありがとうございました。私の質問に記載されている上記のコードにどこのパラメータを指定する必要がありますか? – Saravanan

+0

@Saravanan。MSDNによれば、 3番目のパラメータがtrueの場合.Netフレームワークを使用していますか.Net 4? – gdoron

+0

:はい。私は.net 4を使用しています。 – Saravanan

-1

WorkBookクラスには、Wordでサポートされているものと似ていますが、同じではないProtectメソッドがあります。私は、COM /相互運用ドキュメントを見つけることはできませんが、VSTOのドキュメントは、同じ地面をカバーし、メソッドのシグネチャが同じである:それは変更できないように

Protect

は、ブックを保護します。

public virtual void Protect (
    [OptionalAttribute] Object Password, 
    [OptionalAttribute] Object Structure, 
    [OptionalAttribute] Object Windows 
) 

(これはすべて、それがあなたの物語であると思われるものです読み取り専用の文書を開くとは対照的に、Wordのコードは、何をするかですので、何を達成したいことは、文書を保護するためだったと仮定しこの場合、@gdoron's answerがより適しています

+0

私はexcelDoc.Protect(misval、true、misval)を使用しましたが、動作しません... – Saravanan

関連する問題