Page 1 sur 1

Création d'objet COM [Fatal error]

Posté : 12 mars 2013, 20:59
par Birmania
Bonjour tout le monde.

Je souhaiterais utilisé la librairie COM suivante sous PHP :
https://dotnetzip.codeplex.com/

Concrètement j'ai ce code là :

Code : Tout sélectionner

$fname = 'result.zip'; $zipOutput = './' . $fname; $zipfact = new COM("Ionic.Zip.ZipFile"); $zip->Name = $zipOutput; $dirToZip= "./test30"; $zip->Encryption = 3; $zip->Password = "AES-Encryption-Is-Secure"; $zip->AddDirectory($dirToZip); $zip->Save(); $zip->Dispose();
Le problème est que, j'obtiens l'erreur suivante lors de la création de l'objet COM (New) :
Fatal error: in ******\index.php on line *

L'erreur n'est pas vraiment parlante... Pour information, je viens juste de faire un RegAsm.exe sur la dite DLL car avant elle n'était même pas reconnue.
Auriez-vous une idée de comment résoudre la chose s'il vous plait ?

Vous remerciant d'avance pour vos réponses,
Birmania

Re: Création d'objet COM [Fatal error]

Posté : 12 mars 2013, 23:00
par zeus
Regarde le fichier indiqué dans l'erreur, et la ligne indiquée, et postes déjà ça

Re: Création d'objet COM [Fatal error]

Posté : 12 mars 2013, 23:09
par Birmania
Heu... Comment dire... C'est déjà présent dans mon premier message en fait.

Re: Création d'objet COM [Fatal error]

Posté : 13 mars 2013, 00:59
par zeus
Heu... Comment dire... C'est déjà présent dans mon premier message en fait.
Tu veux dire ce code là :

Code : Tout sélectionner

$fname = 'result.zip'; $zipOutput = './' . $fname; $zipfact = new COM("Ionic.Zip.ZipFile"); $zip->Name = $zipOutput; $dirToZip= "./test30"; $zip->Encryption = 3; $zip->Password = "AES-Encryption-Is-Secure"; $zip->AddDirectory($dirToZip); $zip->Save(); $zip->Dispose();
où, comme il manque le <?php, je me doute que les lignes ne sont pas les bonnes ?

Ou alors de ce message :
Fatal error: in ******\index.php on line *
où le numéro de la ligne est cachée ?

Re: Création d'objet COM [Fatal error]

Posté : 13 mars 2013, 17:26
par Birmania
Ah mince, je ne pensais pas être autant mystique dans mon premier message. Voilà donc le code complet (avec les balises) :

Code : Tout sélectionner

<?php $fname = 'result.zip'; $zipOutput = './' . $fname; $zipfact = new COM("Ionic.Zip.ZipFile"); $zip->Name = $zipOutput; $dirToZip= "./test30"; $zip->Encryption = 3; $zip->Password = "AES-Encryption-Is-Secure"; $zip->AddDirectory($dirToZip); $zip->Save(); $zip->Dispose(); ?>
L'erreur obtenue :

Code : Tout sélectionner

Fatal error: in ******\index.php on line 4
Donc l'erreur se trouve sur cette ligne :

Code : Tout sélectionner

$zipfact = new COM("Ionic.Zip.ZipFile");
Pour information, j'ai bien rajouté la ligne suivante (qui est bien prise en compte) dans mon fichier de configuration "php.ini" :

Code : Tout sélectionner

extension=php_com_dotnet.dll