2012-01-18 2 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 파일.

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에 따르면, 세 번째 매개 변수는 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 
) 

(이 모두는 당신의 이야기가 될 것으로 보인다 무엇 읽기 전용 문서를 여는 반대로 말씀 코드는, 무엇 이후 무엇을 달성하고 싶어하는 문서를 보호하는 것이라고 가정 어떤 경우에는 @gdoron's answer이 더 적절합니다

+0

excelDoc.Protect (misval, true, misval)를 사용했지만 작동하지 않습니다 ... – Saravanan

관련 문제