Fórum DialUp com Delphi #327153
10/08/2006
0
já que todos os provedores possuem seus próprios discadores.
Mais infelismente percebi, que existem situações particulares em que os discadores dos provedores não possuem todos os recuros:
Tipo:
#Multiplas conexões:
(ou seja, colocar em um único discador vários conexões: oi, uol ig, ibest)
Assim um único discador poderia, guarda vários logins, senhas e número de acesso.
Horário reduzido: Configurar o discador para somente permitir conectar determinados horários(horários reduzidos).
Em fim, existem n motivos ...
Olá amigos, já busquei aqui no forum vários tópicos sobre o assunto mais não encontrei a solução.
Estou querendo Criar um discador com o delphi:
Que informando:
ID de login: guialberto@oi.com.br
Senha: ******
número de acesso: 1500-2222
Ou seja, que podesse Discar e autenticar usuário senha
Ok, estou aguardando a ajuda dos amigos ...
Guialberto Soares
Curtir tópico
+ 0Posts
11/08/2006
Guialberto Soares
uses shellapi;
{$R *.dfm}
procedure TForm1.btnConectarClick(Sender: TObject);
var
cmd, par, fil, dir: PChar;
begin
// establish the connection
// die Verbindung aufbauen
// rasdial.exe entryname username password
cmd := ´open´;
fil := ´rasdial.exe´;
[b:96de6a27d7]par := PChar(edtEntry.Text+´ ´+edtUser.Text + ´ ´ + edtPass.Text);[/b:96de6a27d7]
dir := ´C:´;
// call rasdial.exe with Shellexecute
// rasdial mit Shellexecute aufrufen
{SW_SHOWMINNOACTIVE ou SW_HIDE ou SW_SHOWNORMAL};
ShellExecute(Self.Handle, cmd, fil, par, dir, SW_SHOWNORMAL);
end;
procedure TForm1.btnDesconectarClick(Sender: TObject);
var
cmd, par, fil, dir: PChar;
begin
// disconnect the connection to the Internet
// Verbindung zum Internet abbrechen
cmd := ´open´;
fil := ´[color=red:96de6a27d7]rasdial.exe[/color:96de6a27d7]´;
par := PChar(edtEntry.Text + ´ /DISCONNECT´);
dir := ´C:´;
ShellExecute(Self.Handle, cmd, fil, par, dir, SW_SHOWMINNOACTIVE);
end;
Se eu criar uma conexão (em Conexões de rede), com um
NOME, TELEFONE DE ACESSO, com o código acima consigo conectar
e autenticar normalmente:
consigo, me conectar até mesmo passando um outro nome de usuário e senha, o único incoveniente é que não consigo passa para a linha de código um outro TELEFONE DE ACESSO, a linha de código:
par := PChar(edtEntry.Text+´ ´+edtUser.Text + ´ ´ + edtPass.Text);
ficaria mais ou menos assim:
[color=red:96de6a27d7]par := PChar(edtEntry.Text+´ ´+edtUser.Text + ´ ´ + edtPass.Text+´ ´+EditNumeoAcesso.text)[/color:96de6a27d7]
Mas, não dá certo, alguém saberia me ajudar:
Pesquisei sobre Rasdial.exe no Windows e a sintaxe é o seguinte:
[color=blue:96de6a27d7]Sintaxe
rasdial nome_da_conexão [nome_de_usuário [senha | *]] [/domain:domínio] [/phone:número_de_telefone] [/callback:número_para_retorno_de_chamada] [/phonebook:caminho_do_catálogo_telefônico] [/prefixsuffix][/color:96de6a27d7]
onde:
nome_de_usuário [senha | *]
Especifica um nome de usuário e uma senha com os quais será estabelecida a conexão. Se for utilizado um asterisco, o usuário será solicitado a fornecer a senha, mas os caracteres digitados não serão exibidos.
/domain:domínio
Especifica o domínio no qual se localiza a conta de usuário.
Se não estiver presente, será utilizado o último valor do campo Domínio, na caixa de diálogo Conectar a.
/phone:número_de_telefone
Substitui o número de telefone especificado pelo número de telefone da entrada no arquivo Rasphone.pbk.
/callback:número_para_chamada_de_retorno
Substitui o número de retorno de chamada especificado pelo número de retorno de chamada da entrada no arquivo Rasphone.pbk.
/disconnect
Desconecta a entrada especificada.
/phonebook:caminho_do_catálogo_telefônico
Especifica o caminho para o arquivo do catálogo telefônico. O padrão é raiz_do_sistema\System32\Ras\nome_de_usuário.pbk. Você pode especificar um caminho completo para o arquivo.
/prefixsuffix
Aplica as atuais configurações de discagem de local TAPI ao número de telefone. Essas configurações são definidas em Telefonia, no Painel de controle. Por padrão, essa opção fica desativada.
[color=red:96de6a27d7]Como fazer então?[/color:96de6a27d7]
Gostei + 0
11/08/2006
Guialberto Soares
[color=blue:4b2b4ad835]par := PChar(edtEntry.Text+´ ´+edtUser.Text + ´ ´ + edtPass.Text+´ /phone:´+edtNumero.text);[/color:4b2b4ad835][b:4b2b4ad835][/b:4b2b4ad835]
Coloco agora uma outra dúvida:
O programa rasdial.exe, que é executado no prompt do DOS, exibi
menssagens sobre o estatus da conexão, tais como:
[color=violet:4b2b4ad835]Conectanto-se a IBEST
Verificando nome do usuário e a senha ....
Registrando o computador na rede[/color:4b2b4ad835]
Como fazer para capturar essas menssagens e exibi-las em label em
meu aplicativo, pois desse modo eu poderial ao chamar a
[color=red:4b2b4ad835]ShellExecute(Self.Handle, cmd, fil, par, dir, SW_SHOWNORMAL);[/color:4b2b4ad835]
passaria SW_HIDE, como parâmetro para não mostrar a janela do prompt
Ficando assim
[color=blue:4b2b4ad835]ShellExecute(Self.Handle, cmd, fil, par, dir, SW_HIDE);[/color:4b2b4ad835]
Aguardo retorno ...
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)