mapeamento
Moderador: Moderadores
- Amparo
- Usuário Nível 3

- Mensagens: 342
- Registrado em: 20 Ago 2010 10:38
- Localização: caieiras / sao paulo
mapeamento
ola amigos
bom dia a todos
utilizo o
Harbour MiniGUI Extended Edition
sempre usei meus EXE sendo executado com MAPEAMENTO de unidade F: H: T: e por ai vai
tendo em vista que muitas vezes a perda de mapeamento, perda do atalho causa transtornos chamados para recriar mapeamento ou o atalho gostaria de mudar e começar a utilizar o compartilhamento ou seja \\ip ou nome servidor\pasta\executavel.exe
bem acontece que no inicio do meu sistema faço a seguinte checagem: IF !FILE( "SIGECOM.INI" ), para carregar por exemplo Host_Mysql= LOCALHOST, User_Mysql=amparo, Pass_Mysql=n„Z\g“©G[ e outros dados, como o mapeamento esta: S:\TDSQL\EXECUTAVEL.EXE o sistema procura o arquivo SIGECOM.INI na pasta onde esta sendo executado.
se eu compartilhar e dar os devidos direitos de compartilhamento e criar um atalho na área de trabalho \\ip ou nome servidor\pasta\executavel.exe ao executar o programa, passara a procurar o arquivo SIGECOM.INI em Users\amparo\Desktop e não vai encontra-lo a não ser que eu copie o arquivo para area de trabalho o que não seria interessante.
para que funcione eu teria que mudar o programa em IF !FILE( "SIGECOM.INI" ) colocar IF !FILE( "\\nome_compartilhamento\PASTA\SIGECOM.INI" ) mas ai temos varios clientes com varios IPs varias pastas não da para padronizar.
PERGUNTA: tem como eu pegar a propriedade do atalho onde diz o DESTINO: \\nome_compartilhamento\pasta\executavel.exe logo no inicio da aplicação? ou tem outra forma de faze-lo?
abraços
bom dia a todos
utilizo o
Harbour MiniGUI Extended Edition
sempre usei meus EXE sendo executado com MAPEAMENTO de unidade F: H: T: e por ai vai
tendo em vista que muitas vezes a perda de mapeamento, perda do atalho causa transtornos chamados para recriar mapeamento ou o atalho gostaria de mudar e começar a utilizar o compartilhamento ou seja \\ip ou nome servidor\pasta\executavel.exe
bem acontece que no inicio do meu sistema faço a seguinte checagem: IF !FILE( "SIGECOM.INI" ), para carregar por exemplo Host_Mysql= LOCALHOST, User_Mysql=amparo, Pass_Mysql=n„Z\g“©G[ e outros dados, como o mapeamento esta: S:\TDSQL\EXECUTAVEL.EXE o sistema procura o arquivo SIGECOM.INI na pasta onde esta sendo executado.
se eu compartilhar e dar os devidos direitos de compartilhamento e criar um atalho na área de trabalho \\ip ou nome servidor\pasta\executavel.exe ao executar o programa, passara a procurar o arquivo SIGECOM.INI em Users\amparo\Desktop e não vai encontra-lo a não ser que eu copie o arquivo para area de trabalho o que não seria interessante.
para que funcione eu teria que mudar o programa em IF !FILE( "SIGECOM.INI" ) colocar IF !FILE( "\\nome_compartilhamento\PASTA\SIGECOM.INI" ) mas ai temos varios clientes com varios IPs varias pastas não da para padronizar.
PERGUNTA: tem como eu pegar a propriedade do atalho onde diz o DESTINO: \\nome_compartilhamento\pasta\executavel.exe logo no inicio da aplicação? ou tem outra forma de faze-lo?
abraços
- JoséQuintas
- Administrador

- Mensagens: 20415
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
- Curtiram: 1 vez
mapeamento
Ao invés de configurar no atalho, use o PATH do EXE como referência.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- Nascimento
- Usuário Nível 4

- Mensagens: 765
- Registrado em: 19 Jul 2008 12:11
- Localização: OLINDA-PE
mapeamento
amigo leia aqui no forum sobre letodbf, é praticamente o que vc precisa, parece ser complicado mais não é
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina
clipper 5.3 /harbour/minigui
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 8028
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 2 vezes
- Curtiram: 1 vez
mapeamento
Olá!
Passe a usar as novas funções do Harbour com o prefixo hb_Vf* tem equivalente para todas as antigas e muitas novas.
Por exemplo troque file() por hb_VfileExists() e por ai vai.
por exemplo :
Agora a forma que resolver 100% é usar LetoDBf pq não precisa mais de compartilhamento.
A velocidade, concorre em pé de igualdade até com TS(Terminal service)
Saudações,
Itamar M. Lins Jr.
Não resolve 100% mas já tem um ganho.perda do atalho causa transtornos chamados para recriar mapeamento ou o atalho gostaria de mudar e começar a utilizar o compartilhamento ou seja \\ip ou nome servidor\pasta\executavel.exe
Passe a usar as novas funções do Harbour com o prefixo hb_Vf* tem equivalente para todas as antigas e muitas novas.
Por exemplo troque file() por hb_VfileExists() e por ai vai.
Código: Selecionar todos
C:\Windows\System32>hbmk2 -find hb_vf
hbpipeio.hbc (instalado):
hb_vfFromPipes()
hb_vfOpenProcess()
hbtcpio.hbc (instalado):
hb_vfFromSocket()
Núcleo Harbour (instalado):
hb_vfAttrGet()
hb_vfAttrSet()
hb_vfClose()
hb_vfCommit()
hb_vfConfig()
hb_vfCopyFile()
hb_vfDirectory()
hb_vfDirBuild()
hb_vfDirExists()
hb_vfDirMake()
hb_vfDirRemove()
hb_vfDirSpace()
hb_vfDirUnbuild()
hb_vfEof()
hb_vfErase()
hb_vfExists()
hb_vfFlush()
hb_vfHandle()
hb_vfLink()
hb_vfLinkRead()
hb_vfLinkSym()
hb_vfLoad()
hb_vfLock()
hb_vfLockTest()
hb_vfMoveFile()
hb_vfNameExists()
hb_vfOpen()
hb_vfRead()
hb_vfReadAt()
hb_vfReadLen()
hb_vfRename()
hb_vfSeek()
hb_vfSize()
hb_vfTempFile()
hb_vfTimeGet()
hb_vfTimeSet()
hb_vfTrunc()
hb_vfUnlock()
hb_vfWrite()
hb_vfWriteAt()
Código: Selecionar todos
if ! hb_vFileExists( "\\meu\path\com\exe\SIGECOM.INI")
//ou
if ! hb_vFileExists( "\\192.168.0.1\cDirSistema\SIGECOM.INI") A velocidade, concorre em pé de igualdade até com TS(Terminal service)
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 8028
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 2 vezes
- Curtiram: 1 vez
mapeamento
Olá!
Depois que respondi vi que já usa MySQL.
Então não precisa do LetoDBf.
Basta mesmo o uso da novas funções com uma ENVAR.
Por exemplo pegar a variável de ambiente "USERPROFILE" através de hb_getenv("USERPROFILE") vai retornar algo como "C:\Users\Itamar"
Saudações,
Itamar M. Lins Jr.
Depois que respondi vi que já usa MySQL.
Então não precisa do LetoDBf.
E pode padronizar sim.mas ai temos varios clientes com varios IPs varias pastas não da para padronizar.
Basta mesmo o uso da novas funções com uma ENVAR.
Vc pode criar alguma ENVAR no Windows do Cliente e pegar ela com GETENV() ou hb_getenv()PERGUNTA: tem como eu pegar a propriedade do atalho onde diz o DESTINO: \\nome_compartilhamento\pasta\executavel.exe logo no inicio da aplicação?
Por exemplo pegar a variável de ambiente "USERPROFILE" através de hb_getenv("USERPROFILE") vai retornar algo como "C:\Users\Itamar"
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
-
alxsts
- Colaborador

- Mensagens: 3107
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
mapeamento
Olá!
Existe uma lista destas funções no Github do Petewg.Itamar M. Lins Jr. escreveu:Passe a usar as novas funções do Harbour com o prefixo hb_Vf* tem equivalente para todas as antigas e muitas novas.
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
- Amparo
- Usuário Nível 3

- Mensagens: 342
- Registrado em: 20 Ago 2010 10:38
- Localização: caieiras / sao paulo
mapeamento
OLA AMIGOS
boa dia
Itamar, descobri uma forma que não precisa criar a variável no Windows, basta você COMPARTILHAR a pasta dar DIREITO de acesso a ela e criar o atalho como:
\\nome_do_compartilhamento\pasta\executavel.exe
e nas propriedades do atalho em: iniciar em: colocar \\nome_do_compartilhamento_pasta e pronto esta feito.
abraços
boa dia
Itamar, descobri uma forma que não precisa criar a variável no Windows, basta você COMPARTILHAR a pasta dar DIREITO de acesso a ela e criar o atalho como:
\\nome_do_compartilhamento\pasta\executavel.exe
e nas propriedades do atalho em: iniciar em: colocar \\nome_do_compartilhamento_pasta e pronto esta feito.
abraços