Aplicação em WindowsForms (CSharp). Como se comunicar com o navegador Chrome
08/03/2016
0
Olá Pessoal, estou com uma certa dificuldade em trabalhar com o chrome.
Basicamente o que quero fazer teoricamente seria simples, ou seja, apenas
gostaria de executar o chrome passando uma url para ele, caso já exista uma
instancia em execução, apenas utilizaria a mesma guia que estivesse em foco.
Consegui fazer isso no Internet Explore utilizando uma dll nativa do windows.
Mas não consigo fazer nada disso, sem que tenha que utilizar componentes
de terceiros. pessoal, teria como alguém dá alguma dica, ajudar de alguma forma?
Segue o código que utilizei para o IE:
try {
ShellWindows iExplorerInstances = new ShellWindows();
if (iExplorerInstances.Count <= 0)
{
Process.Start("iexplore.exe", txtUrl.Text);
}
if (iExplorerInstances.Count > 0)
{
IEnumerator enumerator = iExplorerInstances.GetEnumerator();
enumerator.MoveNext();
InternetExplorer iExplorer = (InternetExplorer)enumerator.Current;
iExplorer.Navigate(ttxtUrl.Text, 2); //0x800 means new tab =0x800 nova guia. 2 abre na guia existente
}
else
{
ProcessStartInfo obj = new ProcessStartInfo(textBox1.Text);
Process.Start(obj);
}
}
catch(Exception erro)
{
MessageBox.Show(erro.ToString(), "ERRO", MessageBoxButtons.OK, MessageBoxIcon.Error);
Process.Start(textBox1.Text);
}
Basicamente o que quero fazer teoricamente seria simples, ou seja, apenas
gostaria de executar o chrome passando uma url para ele, caso já exista uma
instancia em execução, apenas utilizaria a mesma guia que estivesse em foco.
Consegui fazer isso no Internet Explore utilizando uma dll nativa do windows.
Mas não consigo fazer nada disso, sem que tenha que utilizar componentes
de terceiros. pessoal, teria como alguém dá alguma dica, ajudar de alguma forma?
Segue o código que utilizei para o IE:
try {
ShellWindows iExplorerInstances = new ShellWindows();
if (iExplorerInstances.Count <= 0)
{
Process.Start("iexplore.exe", txtUrl.Text);
}
if (iExplorerInstances.Count > 0)
{
IEnumerator enumerator = iExplorerInstances.GetEnumerator();
enumerator.MoveNext();
InternetExplorer iExplorer = (InternetExplorer)enumerator.Current;
iExplorer.Navigate(ttxtUrl.Text, 2); //0x800 means new tab =0x800 nova guia. 2 abre na guia existente
}
else
{
ProcessStartInfo obj = new ProcessStartInfo(textBox1.Text);
Process.Start(obj);
}
}
catch(Exception erro)
{
MessageBox.Show(erro.ToString(), "ERRO", MessageBoxButtons.OK, MessageBoxIcon.Error);
Process.Start(textBox1.Text);
}
Welton Batista
Curtir tópico
+ 0
Responder
Posts
Clique aqui para fazer login e interagir na Comunidade :)