Как открыть DOCX с паролем в Windows по COM в PHP?

У меня есть файл DOCX и знаю пароль.

Как я могу передать пароль в качестве параметра, чтобы открыть его через COM-объект?

То есть я хочу, чтобы он работал в фоновом режиме.

Вот мой код:

        $word = new COM("Word.Application");
$word->Visible = 0;//set 0 to operate it at background
$word->DisplayAlerts = 0;

if(file_exists ($document))
{
$word->Documents->Open($document);
return $word;
}
else
return false;

Как только файл зашифрован, офис откроется и попросит меня ввести пароль.

Я пытался этот ппт , то есть,

$word = new COM("Word.Application",
array( 'Server' => '127.0.0.1',
'Username' => 'foo',
'Password' => 'bar' ),
CP_UTF8);

Тем не менее, это не работает.

Офис еще открыт и спроси у меня пароль.

Кто-нибудь знает как это сделать?

0

Решение

В настоящее время Microsoft не рекомендует и не поддерживает автоматизацию приложений Microsoft Office из каких-либо необслуживаемых, неинтерактивных клиентских приложений или компонентов (включая ASP, ASP.NET, DCOM и NT Services), поскольку Office может демонстрировать нестабильное поведение и / или или тупик, когда Office работает в этой среде.

Если вы создаете решение, которое выполняется в контексте на стороне сервера, вы должны попытаться использовать компоненты, которые были сделаны безопасными для автоматического выполнения. Или вы должны попытаться найти альтернативы, которые позволяют хотя бы части кода работать на стороне клиента. Если вы используете приложение Office из серверного решения, приложению не хватит многих необходимых возможностей для успешной работы. Кроме того, вы будете рисковать стабильностью вашего общего решения.

Вы можете прочитать больше об этом в Особенности серверной автоматизации Office статья.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]