Como saber a letra da unidade raiz da maquina?
Moderador: Moderadores
- juniorcamilo
- Usuário Nível 3

- Mensagens: 343
- Registrado em: 10 Nov 2006 09:12
- Localização: Pará
Como saber a letra da unidade raiz da maquina?
Amigos me deparei com um caso q nunca tinha visto, sempre soube que poderia ser possivel, fiz diversas rotinas de arquivos temporarios gravar na raiz da maquina local, mas em um determinado cliente alguem particionou o HD começando com a letra H: ,rsrsrrs, ai as diversas rotina nao funciona, oq fazer?
O sujeito deve ter tido um motivo muito especial pra fazer uma coisa tão esquisita como essa. Ou ele tem "casco".
))
A determinação das letras dos drives é feita pelo sistema operacional. No XP, que é o que eu uso, é só ir no Painel de Controle e executar o "Gerenciamento do Computador". Nas outras versões eu não conheço.
Agora, se quiser determinar qual é o drive padrão para o SO, você pode testar (também no XP) a variável de ambiente "SystemDrive".
A determinação das letras dos drives é feita pelo sistema operacional. No XP, que é o que eu uso, é só ir no Painel de Controle e executar o "Gerenciamento do Computador". Nas outras versões eu não conheço.
Agora, se quiser determinar qual é o drive padrão para o SO, você pode testar (também no XP) a variável de ambiente "SystemDrive".
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Eu tive umas experiência similar e resolví fazer isto:
Neste exemplo eu forço a unidade para a letra "C:" que é a que todo mundo deveria ter. Mas quando a unidade do HARD-DISK for outra que não seja "C:" então assumirá a letra que corresponder. Isto porque numa rede, a coisa é diferente. Teste esse exemplo, mas não esqueça de fornecer o caminho onde se encontram os arquivos juntamente com a variável "XVOL" que contém a letra da unidade.
Por exemplo:
E para verificar se é servidor, por exemplo:
Código: Selecionar todos
VVOL:=SUBSTR(ALLTRIM(EXENAME()),1,2)
IF VVOL="C:"
XVOL:="C:"
ELSE
IF DRIVETYPE(VVOL)=3
XVOL:=VVOL
ELSE
XVOL:="C:"
ENDIF
ENDIFPor exemplo:
Código: Selecionar todos
IF FILE( XVOL+"LOCA.CFG" )Código: Selecionar todos
IF !(DISKNAME()=SUBSTR(XVOL,1,1))
VTERM=GETENV("TERMINAL")
IF EMPTY(ALLTRIM(VTERM))
VTERM=UPPER(NETNAME())
ENDIF
ELSE
VTERM="SERVIDOR"
ENDIF
Editado pela última vez por Pablo César em 07 Nov 2007 08:04, em um total de 1 vez.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Mas lembre-se que nem sempre o drive corrente é o primeiro drive da máquina. Essa é a questão do colega.Não sei se é isso que precisa, mas a função Diskname() retorna o drive corrente do DOS.
Aliás, corrigindo/complementando minha mensagem anterior: nem sempre o sistema operacional está instalado no primeiro drive da máquina. E levando-se em conta a esquisitice da coisa, realmente não dá pra confiar.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Mas essa função não ajuda a determinar QUAL o primeiro drive da máquina.Pablo César escreveu:Eu tive umas experiência similar e resolví fazer isto:
Editado pela última vez por Maligno em 07 Nov 2007 08:06, em um total de 1 vez.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Para esses casos o WAPI iria apresentar o drive em que o SO está instalado ?nem sempre o sistema operacional está instalado no primeiro drive da máquina.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Sim, mas o local onde o SO foi instalado pode ser outro que não o primeiro drive disponível. É a mesma situação da variável de ambiente "SystemDrive". O Junior quer saber qual o primeiro drive da máquina. Esse é o problema.Para esses casos o WAPI iria apresentar o drive em que o SO está instalado ?
Editado pela última vez por Maligno em 07 Nov 2007 08:08, em um total de 1 vez.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Claro que SIM. Não determina qual é o drive da máquina que o SO está instalado, mas determina qual é o drive da máquina em que se encontra posicionado.Mas essa função não ajuda a determinar QUAL o primeiro drive da máquina.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Foi isso o que o Junior perguntou?mas determina qual é o drive da máquina em que se encontra posicionado.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Quer dizer então que a GETSYSTEMINFO (item 3 e 4 por exemplo) do WAPI iria mostra o primeiro drive e não onde ele está valendo ?mas o local onde o SO foi instalado pode ser outro que não o primeiro drive disponível
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Essas opções mostram o local onde o SO foi instalado. Mas isso não quer dizer nada. Não serve. Tampouco serve saber qual o drive corrente. O que o Junior está questionando é: como saber qual a letra do PRIMEIRO volume da máquina, independentemente de onde está o SO ou o drive corrente.Quer dizer então que a GETSYSTEMINFO (item 3 e 4 por exemplo) do WAPI iria mostra o primeiro drive e não onde ele está valendo ?
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Aliás, se quiser esquecer essa questão de primeiro volume do HD e apenas resolver o problema dos arquivos temporários, pode fazer como eu: gravar os temporários num diretório TEMP dentro do diretório de instalação do seu próprio programa. Acho que fica mais fácil e correto do que quebrar a cabeça pra resolver as esquisitices dos outros.juniorcamilo escreveu:fiz diversas rotinas de arquivos temporarios gravar na raiz da maquina local, mas em um determinado cliente alguem particionou o HD começando com a letra H: ,rsrsrrs, ai as diversas rotina nao funciona, oq fazer?
Ou, alternativamente, usar o diretório que o próprio Windows usa, lendo uma das variáveis de ambiente que ele cria: "TEMP", "TMP" ou "TMPDIR".
Editado pela última vez por Maligno em 07 Nov 2007 08:24, em um total de 1 vez.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Não sei se é porque são as primeiras horas de quando a gente acorda ou é que você não está entendendo...Maligno escreveu:Foi isso o que o Junior perguntou?mas determina qual é o drive da máquina em que se encontra posicionado.
Desculpe se pareço rude outra vez, meu caro colega: mas quem deveria dizer se serve é o JuniorCamilo, pois eu lancei uma possível solução. Cabe ele verificar se serve ou até mesmo podendo ser adaptada. Tudo irá depender de como é a situação:
- Se o sistema está em rede
- Se a máquina em questão é a do SERVIDOR
- Se o mapeamento é fixo
- Se se posiciona na unida e diretório onde o aplicativo se encontra
Enfim, tem muitas formas de se fazerem as coisas. Lembro da idéia do colega Eolo que mesmo em rede existem os executáveis em cada máquina. Daí, não tenho experiência sobre essa outra questão.
Mas em definitiva Maligno, o que o colega disse:
Siginifica que ele tem funções que direcionam para um drive fixo ou limitado (de tal a tal unidade) e que não está funcionando. Portanto eu considero que o problema está porque a unidade não é a padrão e o aplicativo não funciona. E eu parto pelo principio em que DEVE se posicionar na unidade e pasta onde o aplicativo (do SERVIDOR) se encontra.fiz diversas rotinas de arquivos temporarios gravar na raiz da maquina local, mas em um determinado cliente alguem particionou o HD começando com a letra H: ,rsrsrrs, ai as diversas rotina nao funciona, oq fazer
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Me ative à responder à questão do colega: saber qual o PRIMEIRO volume da máquina. Entretanto, em se tratando de arquivos temporários, a melhor coisa a fazer é esquecer a rede. Não é prudente usar a rede para fazer trafegar arquivos temporários. É um desperdício de banda. Então, desconsiderando a questão rede, a minha sugestão faz sentido.
Ainda assim, repito: a questão dele é sobre a forma de determinar qual o PRIMEIRO volume do disco. Logo, repito: sua função não serve.
Mas, como eu disse antes: particularmente, eu preferiria esquecer essa questão e usar uma alternativa para direcionar os arquivos temporário, sempre em drive local. Nunca em rede. Daí minhas duas sugestões: usar um diretório fixo ou usar o diretório definido pelo próprio Windows.
Em tempo: quando eu disse que uso meu TEMP, esqueci de dizer que sempre tenho um diretório fixo no HD local. Nunca uso rede pra isso.
Ainda assim, repito: a questão dele é sobre a forma de determinar qual o PRIMEIRO volume do disco. Logo, repito: sua função não serve.
Mas, como eu disse antes: particularmente, eu preferiria esquecer essa questão e usar uma alternativa para direcionar os arquivos temporário, sempre em drive local. Nunca em rede. Daí minhas duas sugestões: usar um diretório fixo ou usar o diretório definido pelo próprio Windows.
Em tempo: quando eu disse que uso meu TEMP, esqueci de dizer que sempre tenho um diretório fixo no HD local. Nunca uso rede pra isso.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!

