Περιεχόμενα

# ΥπηρεσίαScriptForge.Platform

Η υπηρεσία Platform παρέχει μια συλλογή ιδιοτήτων σχετικά με το τρέχον περιβάλλον εκτέλεσης και το περιεχόμενο, όπως:

- Το σύστημα υλικού (αρχιτεκτονική, αριθμός CPU, τύπος μηχανής, κ.λπ.)

- Πληροφορίες λειτουργικού συστήματος (τύπος λειτουργικού συστήματος, έκδοση, κ.λπ.)

- Η έκδοση του LibreOffice

- Το τρέχον όνομα χρήστη

Όλες οι ιδιότητες της υπηρεσίας Platform είναι μόνο για ανάγνωση.

## Κλήση υπηρεσίας

Πριν χρησιμοποιήσετε την υπηρεσία Platform, πρέπει να φορτωθεί ή να εισαχθεί η βιβλιοθήκη ScriptForge:

• Οι μακροεντολές Basic απαιτούν τη φόρτωση της βιβλιοθήκης ScriptForge χρησιμοποιώντας την ακόλουθη πρόταση:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
• Τα σενάρια Python απαιτούν εισαγωγή από την ενότητα scriptforge:
από το scriptforge import CreateScriptService

Τα παρακάτω παραδείγματα σε Basic και Python δημιουργούν την υπηρεσία Platform και προσπελάζουν την ιδιότητα Architecture.

##### Σε Basic

          GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
          Dim platform As Variant
          platform = CreateScriptService("Platform")
          MsgBox platform.Architecture

##### Σε Python

          from scriptforge import CreateScriptService
          svc = CreateScriptService("Platform")
          bas = CreateScriptService("Basic")
          bas.MsgBox(svc.Architecture)

## Ιδιότητες

Όνομα | Μόνο για ανάγνωση | Τύπος | Περιγραφή
--- | --- | --- | ---
Architecture | Ναι | String | Η αρχιτεκτονική δυαδικών (bit) του υλικού. Παράδειγμα: "32bit", ή "64bit"
ComputerName | Ναι | String | Το όνομα δικτύου του υπολογιστή.
CPUCount | Ναι | Integer | Ο αριθμός των κεντρικών μονάδων επεξεργασίας.
CurrentUser | Ναι | String | Το όνομα του τρέχοντος συνδεδεμένου χρήστη.
Extensions | Ναι | Πίνακας συμβολοσειρών | Επιστρέφει έναν πίνακα συμβολοσειρών που βασίζεται στο μηδέν που περιέχει τα εσωτερικά αναγνωριστικά όλων των εγκατεστημένων επεκτάσεων.
FilterNames | Ναι | Πίνακας συμβολοσειρών | Επιστρέφει έναν αταξινόμητο πίνακα συμβολοσειρών με βάση το μηδέν που περιέχει τα διαθέσιμα ονόματα φίλτρων εισαγωγής και εξαγωγής εγγράφων.
Fonts | Ναι | Πίνακας συμβολοσειρών | Επιστρέφει έναν πίνακα συμβολοσειρών με βάση το μηδέν που περιέχει τα ονόματα όλων των διαθέσιμων γραμματοσειρών.
FormatLocale | Ναι | String | Επιστρέφει την τοπική ρύθμιση που χρησιμοποιείται για αριθμούς και ημερομηνίες ως συμβολοσειρά στη μορφή "la-CO" (γλώσσα-ΧΩΡΑ).
Locale | Ναι | String | Επιστρέφει τις τοπικές ρυθμίσεις του λειτουργικού συστήματος ως συμβολοσειρά στη μορφή "la-CO" (γλώσσα-ΧΩΡΑ). Αυτό είναι ισοδύναμο με την ιδιότητα SystemLocale.
Machine | Ναι | String | Ο τύπος του μηχανήματος. Παραδείγματα είναι: 'i386', ή 'x86_64'.
OfficeLocale | Ναι | String | Επιστρέφει τις τοπικές ρυθμίσεις της διεπαφής χρήστη ως συμβολοσειρά στη μορφή "la-CO" (γλώσσα-ΧΩΡΑ).
OfficeVersion | Ναι | String | Η ενεργή έκδοση του LibreOffice εκφράζεται ως ' LibreOffice w.x.y.z (The Document Foundation)'. Παράδειγμα: "LibreOffice 7.4.1.2 (The Document Foundation, Debian και Ubuntu)"
OSName | Ναι | String | Ο τύπος του λειτουργικού συστήματος. Παράδειγμα: "Darwin, Linux", ή "Windows".
OSPlatform | Ναι | String | Μια μοναδική συμβολοσειρά που προσδιορίζει την υποκείμενη πλατφόρμα με όσο το δυνατόν περισσότερες χρήσιμες και αναγνώσιμες από τον άνθρωπο πληροφορίες. Παράδειγμα: "Linux-5.8.0-44-generic-x86_64-with-glibc2.32"
OSRelease | Ναι | String | Έκδοση του λειτουργικού συστήματος. Παράδειγμα: '5.8.0-44-generic'
OSVersion | Ναι | String | Η δόμηση ή η έκδοση του λειτουργικού συστήματος. Παράδειγμα: '#50-Ubuntu SMP Tue Feb 9 06:29:41 UTC 2021'
Printers | Ναι | String array | Ο κατάλογος των διαθέσιμων εκτυπωτών ως πίνακας μηδενικής βάσης. Ο προεπιλεγμένος εκτυπωτής εισάγεται στην πρώτη θέση του καταλόγου (ευρετήριο = 0).
Processor | Ναι | String | Το πραγματικό όνομα του επεξεργαστή. Παράδειγμα: 'amdk6'. Αυτή η ιδιότητα μπορεί να επιστρέψει την ίδια τιμή με την ιδιότητα Machine.
PythonVersion | Ναι | String | Επιστρέφει την έκδοση του διερμηνέα Python που χρησιμοποιείται ως συμβολοσειρά στη μορφή "Python major.minor.patchlevel" (π.χ. "Python 3.9.7").
SystemLocale | Ναι | String | Επιστρέφει τις τοπικές ρυθμίσεις του λειτουργικού συστήματος ως συμβολοσειρά στη μορφή "la-CO" (γλώσσα-ΧΩΡΑ). Αυτό ισοδυναμεί με την ιδιότητα Locale (Τοπικές ρυθμίσεις).
UntitledPrefix | Yes | String | Returns the prefix used to name new documents ("Untitled " in english).
UserData | Ναι | Dictionary | Returns a ScriptForge.Dictionary instance containing key-value pairs in relation with Tools - Options - User Data dialog.

Extensive operating system name identification is available from INFO("system") Calc formula.

### Παράδειγμα:

##### Σε Basic

Τα ακόλουθα παραδείγματα σε Basic και Python επεξηγούν πώς να χρησιμοποιήσετε την ιδιότητα Fonts για να γράψετε τα ονόματα όλων των διαθέσιμων γραμματοσειρών στο τρέχον φύλλο Calc ξεκινώντας από το κελί "A1":

        Dim oDoc as Object
        Dim allFonts as Object
        Dim svcPlatform as Object
        Set oDoc = CreateScriptService("Calc")
        Set svcPlatform = CreateScriptService("Platform")
        allFonts = svcPlatform.Fonts
        oDoc.setArray("~.A1", allFonts)

Το παρακάτω παράδειγμα δείχνει πώς να δημιουργήσετε έναν πίνακα Calc με όλες τις τιμές που είναι αποθηκευμένες στην ιδιότητα UserData, η οποία είναι μια παρουσία της υπηρεσίας Dictionary:

        Dim svcPlatform as Object, oUserData as Object, oDoc as Object
        Dim arrUserData As Object, currCell As String
        Set svcPlatform = CreateScriptService("Platform")
        oUserData = svcPlatform.UserData
        arrUserData = oUserData.ConvertToArray()
        Set oDoc = CreateScriptService("Calc", ThisComponent)
        oDoc.SetArray("~.A1", Array(Array("Key", "Value")))
        oDoc.SetArray("~.A2", arrUserData)

##### Σε Python

Τα παραπάνω παραδείγματα μπορούν να γραφτούν σε Python ως εξής:

        from scriptforge import CreateScriptService
        bas = CreateScriptService("Basic")
        doc = CreateScriptService("Calc", bas.ThisComponent)
        svc_platform = CreateScriptService("Platform")
        all_fonts = svc_platform.Fonts
        doc.setArray("~.A1", all_fonts)

        from scriptforge import CreateScriptService
        bas = CreateScriptService("Basic")
        doc = CreateScriptService("Calc", bas.ThisComponent)
        svc_platform = CreateScriptService("Platform")
        user_data = svc_platform.UserData
        arr_user_data = [[key, user_data[key]] for key in user_data]
        doc.SetArray("~.A1", (("Key", "Value"),))
        doc.SetArray("~.A2", arr_user_data)

Όλες οι ρουτίνες ή αναγνωριστικά του ScriptForge στη Basic που έχουν το πρόθεμα χαρακτήρα υπογράμμισης "_" δεσμεύονται για εσωτερική χρήση. Δεν προορίζονται να χρησιμοποιηθούν σε μακροεντολές Basic ή σενάρια Python.

Σχετικά θέματα

Ταυτοποίηση λειτουργικού συστήματος

Πληροφορίες πλατφόρμας με τύπο υπολογισμού INFO("system")

Συνάρτηση GetGuiType

Η βιβλιοθήκη Tools (εργαλείων)