![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ExcelWorkbook.WriteReserved [D7, XP]
Ega23 © (2007-12-28 11:50:00)Ситуация.
Ставлю пароль на Excel-документ (пароль на запись). Т.е., судя по описанию, терминальный флаг WriteReserved должен быть True
Открываю документ:
try
wb := XL.Workbooks.Open(OpenDlg.FileName, EmptyParam, True, EmptyParam,
'**************', EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, 0);
if wb.WriteReserved[0] then
//if wb.ReadOnly[0] then
Memo1.Lines.Add('WriteReserved')
else
Memo1.Lines.Add('Not WriteReserved');
finally
wb := nil;
end;
Предполагается, что я его открываю только на чтение (выделено True).
Если посмотреть, то wb.ReadOnly[0] - действительно выполняется (т.е. сам workbook действительно открыт только для чтения).
Но. wb.WriteReserved[0] почему-то false.
В чём может быть проблема?
Ega23 (2007-12-28 11:54:00) [1]Причём.
wb := XL.Workbooks.Open(OpenDlg.FileName, EmptyParam, True, EmptyParam,
'**************', 'writepassword', EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, 0);
если в качестве writepassord поставить реальный пароль, то тогда терминальный флаг WriteReserved действительно становится True