Programa de 32 bits usando o Office IFilters quando o Office de 64 bits está instalado

1

O Office de 64 bits instala IFilters de 64 bits para seus tipos de documento, mas não instala IFilters de 32 bits. Portanto, programas de 32 bits que dependem de IFilters não podem trabalhar com o Office de 64 bits. E, embora exista uma opção para baixar IFilters de 32 bits da Microsoft, o instalador não será executado em uma máquina de 64 bits, reclamando de incompatibilidade de arquitetura.

Existe alguma maneira de fazer programas de 32 bits extrair texto de documentos do Office usando IFilters quando o Office de 64 bits está instalado?

Obrigado.

user56312
fonte
2
É provavelmente por isso Microsoft recomenda a versão de 32 bits do Office mesmo no Windows de 64 bits.
William Jackson
@WilliamJackson: Isso deveria ser uma resposta.
surfasb
Acabei escrevendo um processo de stub que ordena solicitações do IFilter de 32 bits para 64 bits e os resultados de volta. Não parece ser um caminho mais simples.
user56312

Respostas:

2

Eu tive o mesmo problema - eu tenho um aplicativo de 32 bits que eu corro em uma máquina Win 7 de 64 bits.

Meu aplicativo usa iFilters para extrair texto de arquivos - .doc e .docx

Não tenho certeza se isso funcionará para você, mas minha solução é:

Regedit - Navegar para Computer\HKEY_CLASSES_ROOT\.doc\PersistentHandler e copie a chave do registro. (CERTIFIQUE-SE DE SALVAR ISSO PARA QUALQUER ROLO DE VOLTA SE REQUERIDO)

Regedit - Navegar para Computer\HKEY_CLASSES_ROOT\.docx\PersistentHandler e cole a chave .doc PersistentHandler sobre o .docx PersistentHandler.

Isso essencialmente diz para apontar arquivos .docx no offfilt.dll ( C:\Windows\SysWOW64\offfilt.dll (x86))

Tenho certeza de que tecnicamente alguém vai me dizer o que estou fazendo é completamente errado, mas funciona para mim!

Eu tenho um arquivo em lotes que eu executo, que muda o registro do original para as configurações de .doc e vice-versa, conforme necessário.

Eu suponho que se você está tentando ir para o outro lado - 32 bits para 64 você pode reverter o processo.

GoodJuJu
fonte
0

Não . De acordo com a Microsoft :

Por padrão, o Microsoft Office 2010 instala a versão de 32 bits do Office 2010, mesmo se o computador estiver executando edições de 64 bits do Windows.

A versão de 32 bits do Office 2010 é a opção recomendada para a maioria das pessoas, pois evita possíveis problemas de compatibilidade com outros aplicativos de 32 bits, especificamente os suplementos de terceiros disponíveis apenas para sistemas operacionais de 32 bits.

William Jackson
fonte
1
Obrigado pela resposta, mas eu perguntei sobre o Office IFilters, não o Office. (Você pode instalar e usar o Office IFilters sem instalar o Office.) E, curiosamente, a instalação de 32 bits do Office na verdade sempre instalará IFilters de 64 bits no Windows de 64 bits.
user56312