Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/12/2011, 10h49   #1
Invité de passage
 
Inscription : avril 2008
Messages : 2
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 2
Points : 0
Points : 0
Par défaut Get et Set des propriétés des fichiers Windows

Bonjour,

Je souhaite mettre en place un mini moteur de recherche de fichiers sur plusieurs ordinateurs.

Je voulais simplement faire un petit programme qui me permette de naviguer dans les propriétés windows des fichiers (mots-clés, commentaires, titres...).
Malheureusement les fonctions que j'ai trouvé et testé stat(), stream_get_meta_data()...) ne me donnent pas accès à ces infos ni en lecture ni en écriture.

Quelqu'un a-t-il une solution ?

Merci d'avance.
tibabs est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2012, 23h18   #2
Invité de passage
 
Inscription : avril 2008
Messages : 2
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 2
Points : 0
Points : 0
Par défaut DsoFile.dll un début de réponse

Les propriétés (auteur, titre, catégorie, mot clef, commentaire...) que je souhaite modifier sont celles attachées au fichier de type bureautique (xls, doc, txt, pdf, odt, ods ...).
Pour se faire j'ai trouvé une dll dsofile.dll qui marche très bien lorsque utilisée sous excel et macro VBA.
Néanmoins même si Excel me permet de répondre à une partie de mes besoins, je dois absolument intégrer cette dll à du code php.
J'ai trouvé des exemples sur Internet (Cf ci-dessous EXEMPLE) mais lorsque je fais tourner mon code, je tombe toujours sur une erreur (Cf ci-dessous ERREUR 1) que je n'arrive pas à corriger.
J'ai l'impression que je n'arrive pas à faire reconnaître ma dll par php.
Voila ce que j'ai déjà fait ou tenté :
* récupération du dsofile.dll + installation
* mise en place de cette dll dans windows/system32
* mise en place de cette dll dans xampp/php/ext + déclaration dans php.ini => (Cf ci-dessous ERREUR 2)
* mise en place dans php_ini de com.allow_dcom=true, com.autoregister_typelib = true, com.autoregister_casesensitive = false, com.autoregister_verbose = true
J'ai essayé aussi de faire via dcomcnfg la configuration du composant service "DSO OLE Document Properties Reader 2.1" mais je ne l'ai pas trouvé ni lui ni la clef.

Je commence à ne plus avoir trop d'idée et le fait que certains codes datent de 2003 et que je ne trouve pas de solution sur le Net m'inquiète un peu.
Alors si vous avez des idées, je suis preneur.


EXEMPLE
=======
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php 
// the file you wish to access 
$fn = '/docs/MFA.xls'; 
 
$oFilePropReader = new COM('DSOleFile.PropertyReader'); 
$props = $oFilePropReader->GetDocumentProperties($fn); 
 
// one syntax 
$au = com_get($props, 'Author'); 
print "au: $au \n"; 
 
//another syntax 
$str = 'LastEditedBy'; 
$lsb = $props->$str; 
var_dump($lsb); 
 
// set a property if you wish 
if (!$props->IsReadOnly()) { 
  $props->Subject = 'tlc'; 
} 
?>
ERREUR 1
========
Code :
Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `DSOleFile.PropertyReader': Syntaxe incorrecte ' in D:\DEV\XtraDoc\rechercheDocBD.php:14 Stack trace: #0 D:\DEV\XtraDoc\rechercheDocBD.php(14): com->com('DSOleFile.Prope...') #1 {main} thrown in D:\DEV\XtraDoc\rechercheDocBD.php on line 14

ERREUR 2
========
Code :
PHP Warning:  PHP Startup: Invalid library (maybe not a PHP library) 'dsofile.dll' in Unknown on line 0
tibabs est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h07.


 
 
 
 
Partenaires

Hébergement Web