Diferenças
A seguir, as funções e componentes não suportados ou com comportamento diferenciado entre as versões HTML e Desktop.
Funções
CpyS2T
Como o navegador não tem acesso ao sistema de arquivos da estação remota, a chamada é desviada para a função CpyS2TW, e assim, o caminho destino da cópia é ignorado e é exibido o diálogo de download do arquivo.
CpyT2S
Como o navegador não tem acesso ao sistema de arquivos da estação remota, ele só pode copiar arquivos que forem carregados para a área temporária do usuário pela chamada da função CGetFile.
WinExec
Esta função não é suportada pelo SmartClient HTML pois o navegador não tem acesso ao sistema de arquivos da estação remota. O código de erro retornado é sempre o 5 (ERROR_ACCESS_DENIED).
ShellExecute
Essa função quando executada no SmartClient HTML só suporta as seguintes ações:
- open: Abre uma janela popup com o endereço informado no parâmetro cArquivo, com o nome informado em cDirTrabalho.
- exec: Executa um comando JavaScript informado no parâmetro cArquivo, na janela indicada no parâmetro cDirTrabalho, se informada, senão executa na janela principal do SmartClient HTML.
- close: Fecha a janela criada pelo comando open, com o nome informado no parâmetro cDirTrabalho.
ExecInClient
Esta função não é suportada pelo SmartClient HTML pois o navegador não tem acesso ao sistema de arquivos da estação remota.
ExecInDLLClose
Esta função não é suportada pelo SmartClient HTML pois o navegador não tem acesso ao sistema de arquivos da estação remota.
ExecInDLLOpen
Esta função não é suportada pelo SmartClient HTML pois o navegador não tem acesso ao sistema de arquivos da estação remota.
ExecInDLLRun
Esta função não é suportada pelo SmartClient HTML pois o navegador não tem acesso ao sistema de arquivos da estação remota.
ExeDLLRun2
Esta função não é suportada pelo SmartClient HTML pois o navegador não tem acesso ao sistema de arquivos da estação remota.
ExeDLLRun3
Esta função não é suportada pelo SmartClient HTML pois o navegador não tem acesso ao sistema de arquivos da estação remota.
AddCSSRule
Esta função depende do suporte do navegador para a propriedade CSS utilizada. Verificar suporte através de http://caniuse.com.
Também não é possível utilizar as classes de componentes da versão desktop (Ex: QPushButton, QProgressBar), sendo necessário adaptar para as classes e tags html.
CSSDictAdd
Ver AddCSSRule.
ComputerName
Esta função não é suportada pelo SmartClient HTML pois o navegador não tem acesso a essa informação da estação remota.
GetComputerName
Ver ComputerName.
GetRmtInfo
Quando executado pelo SmartClient HTML, apenas alguns dos valores são acessíveis, conforme tabela abaixo:
Posição | Dado | Valor acessível |
---|---|---|
1 | Nome do Computador | Não |
2 | Sistema Operacional | Sim |
3 | Informação adicional | Não |
4 | Memória Física | Não |
5 | Número de Processadores | Não |
6 | MHZ Processador | Não |
7 | Descrição do Processador | Não |
8 | Linguagem | Não |
9 | Navegador | Sim |
GetRemoteType
Esse método deve ser usado para saber quando o sistema está sendo executado via SmartClient HTML e realizar os tratamentos necessários. O parâmetro cLibVersion é preenchido com o prefixo HTML e a versão do mesmo, conforme exemplos abaixo:
- SmartClient Desktop: “QT-4.5.2 WIN”
- SmartClient HTML: “HTML-2.2.4 WIN”
Funções de Controle de Impressão
Estas funções não são suportadas pelo SmartClient HTML pois o navegador não tem acesso direto a porta de impressão.
Funções de Manipulação de arquivos, discos e IO
Estas funções em sua maioria não são suportadas pelo SmartClient HTML pois o navegador não tem acesso direto ao sistema de arquivos da estação remota.
GetCredential
Esta função não é suportada pelo SmartClient HTML pois o navegador não tem acesso a essa informação da estação remota.
CGetFile
Esta funcao nao pode exibir diretamente os arquivos da estação remota.
Ela exibe um link para que seja aberta a janela de selecao de arquivos do navegador, e o arquivo selecionado é carregado para a area temporaria do usuario no webapp. O retorno é o caminho do arquivo carregado.
Componentes
TIBrowser
Não é possível imprimir o conteúdo de um TIBrowser ( oTIBrowser:Print() ) devido a uma restrição dos navegadores.
TMediaPlayer
Os formatos de arquivos homologados para SmartClient HTML são: MP4, MOV, WMV e MP3.
TMSGraphic
A propriedade l3D não é suportada, o componente somente desenha gráficos 2D.
TMSPrinter
Este componente não é homologado pelo SmartClient HTML pela diferença de impressão e renderização de fontes entre navegadores.
Recomenda-se a impressão via geração de PDF utilizando o componente TReport()
TPageView
Este componente não é homologado pelo SmartClient HTML pela diferença de impressão e renderização de fontes entre navegadores.
TOleContainer
Este componente não é suportado pelo SmartClient HTML.
TSVG
Esse componente depende do suporte do navegador ao formato e sua versão. Para mais informações: http://caniuse.com/#feat=svg
TSystemTray
Este componente não é suportado pelo SmartClient HTML.
TSrvObject
- TSrvObject:SetCSS
Ver AddCSSRule.