Question

Nous avons une application .NET 32 bits qui utilise la version 32 bits de Dsofile.dll 2.1 pour lire les propriétés communes de documents Office. Cela fonctionne sur les versions de Windows, pour les Office 2003 et documents Office 2007 32 bits. Nous examinons maintenant le comportement de notre application dans un environnement 64 bits, et plus particulièrement dans Windows Server 64 bits 2008.

Dans cet environnement 64 bits, Dsofile.dll peut lire avec succès des propriétés de documents Office 2003 (par exemple. DOC), mais dans le cas des documents Office 2007 (par exemple. DOCX), seules les chaînes vides sont retournées pour toutes les propriétés, ou bien une erreur est générée.

Voici mes observations:

Environnement: clean install
Lire les accessoires DOC: OK
Lire les accessoires DOCX: valeurs vides retournés

Environnement: Office 2007 Pack de compatibilité installé
Lire les accessoires DOC: OK
Lire les accessoires DOCX: valeurs vides retournés

Environnement: Office 2007 Pack de compatibilité SP1
Lire les accessoires DOC: OK
Lire les accessoires DOCX: valeurs vides retournés

Environnement: Office 2007 installé
Lire les accessoires DOC: OK
Lire les accessoires DOCX: message d'erreur = "document n'est pas un fichier OLE"

Dans le système 64 bits je la copie de regsvr32 situé dans% SystemRoot% \ Syswow64 pour enregistrer Dsofile.dll.

Tout conseil serait grandement apprécié.

Était-ce utile?

La solution

Vous pouvez compiler votre application x86 au lieu de AnyCPU, il fonctionnera très bien sur Windows x64.

Une autre possibilité consiste à utiliser Open XML SDK 2.0 pour Microsoft Office. Voir si elle prend en charge les applications 64 bits.

http: // www .microsoft.com / téléchargements / Details.aspx? FamilyId = C6E744E5-36E9-45F5-8D8C-331DF206E0D0 & displaylang = fr

Autres conseils

Vous pouvez trouver le code source Dsofile (un coup d'oeil sur Google) et le compiler pour 64 bits, ou d'essayer ce lien qui quelqu'un dit qu'ils ont déjà fait: http://www.keysolutions.com/blogs/kenyee.nsf/ d6plinks / KKYE-79KRU6

J'ai aussi une version 64 bits ici si vous en avez besoin, je peux le télécharger.

Il ne peut pas être directement lié à votre question, mais si vous voulez l'essayer, je l'ai utilisé x86 et x64

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top