Conteúdo
Índice 🔎︎

# Serviço ScriptForge.Platform

O serviço Platform fornece um conjunto de propriedades sobre o ambiente de execução atual e seu contexto, incluindo:

- A plataforma de hardware (arquitetura, contagem de núcleos do CPU, tipo de máquina, etc)

- Informações sobre o sistema operacional (Tipo do sistema, lançamento, versão, etc)

- A versão do LibreOffice

- Nome de usuário atual

Todas as propriedades do serviço Platform são somente leitura.

## Invocação do serviço

Os exemplos abaixo em Basic e Python criam uma instância do serviço Platform e acessam a propriedade Architecture.

##### Em Basic

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

##### Em Python

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

## Propriedades

Nome | Somente leitura | Tipo | Descrição
Architecture | Sim | String | A arquitetura do hardware. Exemplo: '32bit' ou '64bit'
ComputerName | Sim | String | Nome de rede do computador
CPUCount | Sim | Integer | Número de unidades centrais de processamento.
CurrentUser | Sim | String | Nome do usuário atualmente logado.
Fonts | Sim | Array de Strings | Retorna um array indexado a partir de zero contendo os nomes de todas as fontes disponíveis.
Locale | Sim | String | Retorna a localidade do sistema operacional como uma string no formato idioma-PAÍS (la-CO). Examplos: "en-US", "pt-BR", "fr-BE".
Machine | Sim | String | Tipo da máquina. Exemplos: 'i386' ou 'x86_64'.
OfficeVersion | Sim | String | Versão atual do LibreOffice expressa no formado 'LibreOffice w.x.y.z (The Document Foundation)'. Exemplo: 'LibreOffice 7.1.1.2 (The Document Foundation, Debian and Ubuntu)'
OSName | Sim | String | Tipo do sistema operacional. Exemplo: 'Darwin, Linux' ou 'Windows'.
OSPlatform | Sim | String | String única e legível por humanos identificando a plataforma com a maior quantidade possível de informações. Exemplo: 'Linux-5.8.0-44-generic-x86_64-with-glibc2.32'
OSRelease | Sim | String | Versão do sistema operacional. Exemplo: '5.8.0-44-generic'
OSVersion | Sim | String | Compilação ou versão do sistema operacional. Exemplo: '#50-Ubuntu SMP Tue Feb 9 06:29:41 UTC 2021'
Printers | Sim | String array | Lista de impressoras disponíveis retornadas em um array indexado a partir de zero. A impressora padrão é colocada na primeira posição da lista (índice = 0)
Processor | Sim | String | Nome real do processador. Exemplo: 'amdk6'. Esta propriedade pode retornar o mesmo valor que a propriedade Machine.
PythonVersion | Sim | String | Retorna a versão do interpretador Python sendo usado como uma string no formato "Python major.minor.patchlevel" (ex: "Python 3.9.7").

### Exemplo:

Os exemplos a seguir em Basic e em Python ilustram como usar a propriedade Fonts para escrever os nomes de todas as fontes disponíveis no sistema na planilha Calc atual iniciando na célula "A1":

##### Em Basic

          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)

##### Em Python

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

Todas as rotinas ou identificadores do ScriptForge em Basic que possuem o caractere "_" como prefixo são reservadas para uso interno. Elas não devem ser usadas em macros escritas em Basic ou em Python.

Tópicos relacionados

Identificar o sistema operacional

Informação sobre a plataforma usando a fórmula INFO("system") do Calc

Função GetGuiType

A biblioteca TOOLS Library