eldorado1
Goto Top

InternetExplorer.Application in HTA

Hallo,

ich habe mir eine HTA erstellt in der ich wenn ich auf einen Button klicke eine Reihe von Prozeduren nacheinander aufrufe.
Ich möchte mit einer InternetExplorer.Application ein Fenster ganz am Anfang öffnen lassen in dem der Benutzer auswählen kann welche Prozeduren laufen sollen.
Hab mir das so vorgestellt, dass beim Aufruf der IE öffnet und man dort 10 Checkboxes (schon ausgewählt) zur Auswahl hat und wenn man starten möchte in der InternetExplorer.Application auf einen Button Start klickt. (vgl. Bild)

HTA Code:

<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=9" />  
<title>test</title>

<HTA:APPLICATION
     ID="test"  
     APPLICATIONNAME="test"  
	 CONTEXTMENU="NO"  
	 INNERBORDER="NO"  
	 SYSMENU="YES"  
	 MaximizeButton="YES"  
	 Minimize Button="YES"  
     SCROLL="NO"  
	 SELECTION="NO"  
     SINGLEINSTANCE="YES"  
>
<SCRIPT Language="VBScript">  

	Sub Run()
		set oIE = CreateObject("InternetExplorer.Application")  
		oIE.TheaterMode = False
		oIE.AddressBar = False
		oIE.MenuBar = False
		oIE.StatusBar = False
		oIE.ToolBar = False
		oIE.left=100
		oIE.top = 100
		oIE.Height = 500
		oIE.Width = 400
		oIE.visible = true
		oIE.navigate "HTML SEITE"  
		
		While oIE.busy
                   'DoEvents  
                Wend
		
		oIE.Document.form1.element("checkbox1").checked = true  

		'oIE.Quit()  
		'Set oIE = Nothing  
	End Sub
	
</SCRIPT>
</head>

<body>
	<input type="button" alt="Start" onclick="Run()"/>  
</body>
</html>

HTML Seite:

<html>
 <head>
 </head>
 <script language="VBScript">  
  Sub Status()
   form.formStatus.Value = 1
  End Sub
 </script>
 <body>
  <h1>Auswahl</h1>
  <form name="form">  
  <input type="hidden" name="formStatus" Value = 0>  
  <input type="checkbox" name="Checkbox1">checkbox 1<br>  
  <input type="checkbox" name="Checkbox2" checked="yes">checkbox 2<br>  
  <input type="checkbox" name="Checkbox3" checked="yes">checkbox 3<br>  
  <input type="button"  name="Run" value="Start" onClick="Status()">  
  </form>
 </body>
</html>

Allerdings wenn ich jetzt auf den Button in der HTA drücke bekomme ich eine Fehlermeldung ("unbekannter Fehler") in
der HTA Zeile 48 mit dem Button

oIE.Document.form.element("checkbox1").checked = true  

Mit diesem Aufruf kommt er nicht klar.
Weiß allerdings nicht wieso

Der IE öffnet sich und zeigt mir alles wie gewollt an - nur die Funktionen fehlen.
(Im IE zeigt er noch an: "Das Ausführen von Skript bzw. ActiveX-Steuerelementen wurde für diese Webseite eingeschränkt" - keine Ahnung ob des auch zu einem Fehler führen würde)

Gruß

18fb6e890cdb24dea04d395207539054

Content-Key: 287412

Url: https://administrator.de/contentid/287412

Printed on: April 19, 2024 at 02:04 o'clock

Mitglied: 114757
114757 Nov 04, 2015 updated at 12:35:38 (UTC)
Goto Top
<html>
<head>
<title>test</title>

<HTA:APPLICATION
  APPLICATIONNAME="test"  
  ID="test"  
  BORDER="dialog"  
  INNERBORDER="no"  
  SCROLL="no"  
  SINGLEINSTANCE="yes"  
  CONTEXTMENU="no"  
  SELECTION="no"/>  
<SCRIPT Language="VBScript">  
	Sub Window_OnLoad
		window.resizeTo 300,250
	End Sub
	Sub Start()
		Set checkboxes = document.getElementsByName("checkbox")  
		If Not checkboxes Is Nothing Then
			For i = 0 To checkboxes.length -1
				If checkboxes(i).checked Then
					MsgBox checkboxes(i).value
				End If 
			Next
		End If
	End Sub
</SCRIPT>
</head>

<body>
	<h1>Auswahl</h1>
  	<form name="form">  
		<input type="hidden" name="formStatus" Value = 0>  
	 	<input type="checkbox" name="Checkbox" value="Aktion 1">Aktion 1<br />  
	  	<input type="checkbox" name="Checkbox" checked="yes" value="Aktion 2">Aktion 2<br />  
	  	<input type="checkbox" name="Checkbox" checked="yes" value="Aktion 3">Aktion 3<br />  
	  	<p><input type="button" name="Run" value="Start" onClick="Start()"></p>  
  	</form>
</body>
</html>

Gruß jodel32
Member: eldorado1
eldorado1 Nov 05, 2015 at 14:26:06 (UTC)
Goto Top
Hallo,

die Checkboxes sind jetzt aber direkt in der hta eingebunden wenn ich das nicht falsch interpretiert habe.
Ich hätte aber gerne in der HTA auf einen Button geklickt der mir dann ein neues Fenster öffnet in dem die checkboxes dann sind.

Oder ist das dann nicht möglich, darauf zuzugreifen?

Gruß eldorado
Mitglied: 114757
114757 Nov 05, 2015 updated at 14:37:42 (UTC)
Goto Top
Zitat von @eldorado1:
die Checkboxes sind jetzt aber direkt in der hta eingebunden wenn ich das nicht falsch interpretiert habe.
Nein das ist richtig, die sind in der selben HTA
Ich hätte aber gerne in der HTA auf einen Button geklickt der mir dann ein neues Fenster öffnet in dem die checkboxes dann sind.
Dann mach doch einfach eine zweite HTA die du aus der ersten heraus öffnest, dann hast du auch nicht die Security-Probleme.

Set objShell = CreateObject("wscript.Shell")  
objShell.Run "C:\deineZweiteHTA.hta"  
Member: eldorado1
eldorado1 Nov 06, 2015 at 07:34:47 (UTC)
Goto Top
Hallo und Danke für deine Antwort,

wenn ich das "Fenster mit den Checkboxes" als hta abspeichere und wie du erwähnt mit

Set objShell = CreateObject("wscript.Shell")   
objShell.Run "C:\deineZweiteHTA.hta"  


ausführe, wie kann ich dann den Status der Checkboxes in der ersten hta abfragen.

Gruß
Mitglied: 114757
114757 Nov 06, 2015 at 07:46:40 (UTC)
Goto Top
Schreib sie in eine Textdatei, oder verlagere die ausführende Routine ins zweite Fenster.
Member: eldorado1
eldorado1 Nov 06, 2015 at 08:18:45 (UTC)
Goto Top
Danke

werde ich ausprobieren

gruß
Member: eldorado1
eldorado1 Nov 20, 2015 at 09:34:12 (UTC)
Goto Top
Habe es nun mit einer Zweiten HTA realisiert, die mir die Werte der Checkboxen in eine Txt Datei schreibt.