Java Killing Popup Process - PullRequest
       19

Java Killing Popup Process

1 голос
/ 13 сентября 2011

Я сейчас пишу простую программу для имитации реального серфинга в Интернете. Однако, если на экране появляется какое-либо всплывающее окно или программа, мне нужно либо свернуть, либо закрыть ее, чтобы она не взаимодействовала с неверной программой. Таким образом, я должен контролировать запущенный процесс или обнаруживать новый процесс? Я пытался использовать Javascript, но он требует ActiveX в IE и довольно проблематично. Может кто-нибудь любезно посоветовать мне, как начать писать эту часть кода? Я немного погуглил, и он говорит, что эти команды процесса window.opener.close () или Process.Destroy (). Благодарю. Ниже приведен простой набросок моего кода.

package javaapplication1;
import java.util.Random;

public class JavaApplication1 
{
    public static void main(String[] args) 
    {
        try
        {
            Random rand = new Random();
            int n = 1 + rand.nextInt(3);
            if (n == 1)
            {
                String myURL = "www.facebook.com";
                java.awt.Desktop myNewBrowserDesktop = java.awt.Desktop.getDesktop();
                java.net.URI myNewLocation = new java.net.URI(myURL);
                myNewBrowserDesktop.browse(myNewLocation);
            }
            if (n == 2)
            {
                String myURL = "www.google.com";
                java.awt.Desktop myNewBrowserDesktop = java.awt.Desktop.getDesktop();
                java.net.URI myNewLocation = new java.net.URI(myURL);
                myNewBrowserDesktop.browse(myNewLocation);
            }
            if (n == 3)
            {
                String myURL = "www.yahoo.com";
                java.awt.Desktop myNewBrowserDesktop = java.awt.Desktop.getDesktop();
                java.net.URI myNewLocation = new java.net.URI(myURL);
                myNewBrowserDesktop.browse(myNewLocation);
            }
        }
        catch(Exception e)
        {
        }
    }
}

1 Ответ

0 голосов
/ 13 сентября 2011

Это не может быть сделано.Desktop.browse Запускает браузер по умолчанию для отображения URI .Содержимое документа (html), которое отображает браузер, может привести к тому, что браузер откроет новое окно или сделает что-то еще, что браузер может сделать, когда вы просматриваете этот URI вручную в браузере.

В большинстве случаев браузер не создает новый процесс.Независимо от того, создает ли он новый процесс или только окно, он не будет уведомлять вашу вызывающую программу;поэтому ваша вызывающая программа не может контролировать эти окна.

Вы можете сделать что-то подобное, используя встроенный браузер.

...