Wie finde ich ein bestimmtes Fenster auf dem Client -Computer und aktiviere es von ASP.NET?

StackOverflow https://stackoverflow.com/questions/5339252

Frage

Wenn ich eine Website von ASP.NET ausführe, muss ich die Steuerung (Fokus) auf eine WinForms -Anwendung übertragen.

Falls die Anwendung nicht ausgeführt wird, weiß ich, dass ich Process.Start () -Methode verwenden kann.

Falls die Anwendung ausgeführt wird, möchte ich kein neues Fenster starten.

Ich habe die Möglichkeit, die Winform -Anwendung als eindeutige Instanz einzurichten, aber was ist, wenn es sich um eine fremde Anwendung handelt? Ich meine, wenn ich nicht der Autor bin und keine Kontrolle über neue Instanzen habe ...

Wie finde ich ein bestimmtes Fenster auf dem Client -Computer und aktiviere es von ASP.NET?

War es hilfreich?

Lösung

Aus Sicherheitsgründen können Sie dies nicht können. Der Code im Browser hat keinen Zugriff auf das Benutzersystem.

Andere Tipps

Wenn der Browser Internet Explorer ist, können Sie a hosten .Hta Seite (oder geben Sie einen Inhaltstyp zurück: Anwendung/HTA ).

Eine .hta -Seite ist voll vertrauenswürdig und kann über COM auf alles auf alles zugreifen. Wenn Sie es also mit VBScript tun können, können Sie es auf einer .hta -Seite tun.

Der Benutzer muss dieser "Anwendung" vertrauen, bevor sie heruntergeladen wird. Wenn dies eine Internetanwendung ist, erhalten Sie dieses Vertrauen wahrscheinlich nicht. Wenn dies eine Intranet -Anwendung ist, können Sie den Benutzer zwingen, der Seite zu vertrauen.

Ich nehme an, wenn dies ein bisschen Funktionalität war, die Sie wirklich brauchten, könnten Sie die ActiveX -Route hinuntergehen. Trotzdem würde es nur im IE funktionieren und ein separates Plugin für Firefox (oder andere Brüder) erfordern, um zu funktionieren.

Ehrlich gesagt klingt es nach Overkill für das, was Sie erreichen möchten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top