ActivexObject("Excel.Application") και εφαρμογή Excel

Κώδικας, πληροφορίες, ερωτήσεις και απαντήσεις σχετικές με την JavaScript.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
psapikas
Δημοσιεύσεις: 25
Εγγραφή: 19 Σεπ 2009 08:25

ActivexObject("Excel.Application") και εφαρμογή Excel

Δημοσίευση από psapikas » 10 Νοέμ 2009 22:52

Καλησπέρα,

Σε συνάρτηση javascript δημιουργώ ένα ActiveXObject("Excel.Application") και γεμίζω κάποια φύλλα.
Το excel εκκινεί κανονικά και γεμίζουν τα φύλλα με τα δεδομένα μου, όμως όταν κλείσω το excel (είτε σώσω το αρχείο είτε χωρίς να το σώσω) παραμένει το excel.exe στις διεργασίες στον task manager.
Πως πρέπει να απελευθερώνω το object ώστε να μην κρεμάει το excel??

Ευχαριστώ

EDIT: Λύθηκε... εκτός από quit, έπρεπε να κληθεί και ο garbagecollector

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

ActivexObject("Excel.Application") και εφαρμογή Excel

Δημοσίευση από dva_dev » 10 Νοέμ 2009 23:10

Το excel μένει ακόμα και αν κλείσεις τη συγκεκριμένη σελίδα ή αν πας σε κάποια άλλη;

Άβαταρ μέλους
Pavel
Honorary Member
Δημοσιεύσεις: 1046
Εγγραφή: 08 Αύγ 2003 00:05
Τοποθεσία: UK

ActivexObject("Excel.Application") και εφαρμογή Excel

Δημοσίευση από Pavel » 10 Νοέμ 2009 23:11

Δοκίμασες το Object.Quit;
Εσύ είσαι τρελός.

psapikas
Δημοσιεύσεις: 25
Εγγραφή: 19 Σεπ 2009 08:25

ActivexObject("Excel.Application") και εφαρμογή Excel

Δημοσίευση από psapikas » 10 Νοέμ 2009 23:15

Το excel παρέμενε έστω και αν έκλεινα τελείως τον browser...

Άβαταρ μέλους
Pavel
Honorary Member
Δημοσιεύσεις: 1046
Εγγραφή: 08 Αύγ 2003 00:05
Τοποθεσία: UK

ActivexObject("Excel.Application") και εφαρμογή Excel

Δημοσίευση από Pavel » 10 Νοέμ 2009 23:22

Pavel έγραψε:Δοκίμασες το Object.Quit;
Εσύ είσαι τρελός.

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

ActivexObject("Excel.Application") και εφαρμογή Excel

Δημοσίευση από dva_dev » 10 Νοέμ 2009 23:32

Οταν τελειώνεις (σαν την πετρούλα) με το activeX πρέπει να το κάνεις free, release, null, nothing (όπως το λέει η κάθε γλώσσα). Στην προκείμενη περίπτωση, μάλλον πρέπει να το κάνεις null.

Κώδικας: Επιλογή όλων

var x = new ActiveXObject("Excel.Application");
//do something with x
...
x = null;

psapikas
Δημοσιεύσεις: 25
Εγγραφή: 19 Σεπ 2009 08:25

ActivexObject("Excel.Application") και εφαρμογή Excel

Δημοσίευση από psapikas » 11 Νοέμ 2009 07:47

Ευχαριστώ για τις άμεσες απαντήσεις σας :D

Απάντηση

Επιστροφή στο “JavaScript και Frameworks”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης