Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Framework - Linha Datasul - TEC - Como mudar o diretório corrente da sessão Progress no Datasul

relogio.png Tempo aproximado para leitura 00:02:05 min

Dúvida
Como mudar o diretório corrente da sessão Progress no Datasul?

Ambiente
Framework - Framework (Linha Datasul) - Progress OpenEdge – Todas as versões

Solução
O diretório corrente das sessões client do Progress no Datasul é o desktop do usuário. Isto faz com que alguns arquivos temporários e vários protrace sejam gerados no desktop, o que não é conveniente.

O diretório corrente de um processo, se não for alterado pela própria aplicação, é o diretório corrente do processo criador. Quem executa o prowin32.exe no Datasul é o java.exe, que por sua vez é iniciado pelo jp2launcher.exe, sendo iniciado pelo iexplore.exe. Como o diretório corrente do Internet Explorer é o desktop, esta configuração é herdada pelos processos até o prowin32.exe.

Um processo pode alterar seu diretório corrente chamando a API SetCurrentDirectory. O programa de alias, indicado no config.xml, é um bom ponto para chamar esta API, pois é o primeiro programa Progress executado na sessão que temos controle.

Neste exemplo foi alterado o programa datasul-configxml-alias.p e adicionadas as seguintes linhas no início para alterar o diretório corrente para c:\temp:

DEFINE VARIABLE intResult AS INTEGER NO-UNDO.

PROCEDURE SetCurrentDirectoryA EXTERNAL "KERNEL32.DLL":
DEFINE INPUT PARAMETER chrCurDir AS CHARACTER.
DEFINE RETURN PARAMETER intResult AS LONG.
END PROCEDURE.

RUN SetCurrentDirectoryA (INPUT "c:\temp", OUTPUT intResult) NO-ERROR.


Esta configuração não resolve todos os problemas, pois alguns arquivos são abertos pelo Progress antes de o programa de alias executar, e consequentemente estão utilizando o diretório corrente antes da alteração.  Mas serve para os casos de arquivos temporários gerados pelos programas e dos arquivos protrace.

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _