Discussion:
HTA-Seite mit VBScript
(zu alt für eine Antwort)
Jörg Vosse
2004-10-06 11:37:59 UTC
Permalink
Hallo zusammen,

ich stehe etwas auf der Leitung.

Ich habe folgendes VBScript erstellt:
*****
Const ADS_PROPERTY_UPDATE = 2

Set objADSysInfo = CreateObject("ADSystemInfo")
Set objUser = GetObject("LDAP://" & objADSysInfo.UserName)

Strasse = Inputbox("Geben Sie bitte die Strasse
ein:","Eingabe Benutzerdaten",objUser.Get("streetAddress"))

objUser.Put "streetAddress", Strasse

objUser.SetInfo
*****

Damit kann jeder User seine Strasse im AD ändern.

Das ganze will ich in eine HTA-Seite einbinden. Ich möchte
ein Eingabefeld erstellen. Wen ich die HTA-Seite aufrufe
soll in dem Eingabefeld der bisherige Eintrag aus dem AD
dort stehen. Dann kann er ggf. geändert werden und über
eine Schaltfläche (Bsp. Eintragen) in das AD geschrieben
werden. Das ganze will ich erweitern mit mehreren
Einträgen.

Leider bekomme ich es nicht hin ein Eingabefeld zu
erstellen, welches beim Aufruf der HTA-Seite den Eintrag
aus dem AD übernimmt und zurückschreibt. Die HTA-Seite mit
dem Eingabefeld ist einfach, aber wie binde ich mein
VBScript dort ein?

Hoffe mir kann jemand helfen.

Schonnal vielen Dank

Gruß
Jörg
a***@discussions.microsoft.com
2004-10-06 12:41:27 UTC
Permalink
Hallo Jörg,
-----Originalnachricht-----
Hallo zusammen,
ich stehe etwas auf der Leitung.
*****
Const ADS_PROPERTY_UPDATE = 2
Set objADSysInfo = CreateObject("ADSystemInfo")
Set objUser = GetObject("LDAP://" &
objADSysInfo.UserName)
Strasse = Inputbox("Geben Sie bitte die Strasse
ein:","Eingabe Benutzerdaten",objUser.Get
("streetAddress"))
objUser.Put "streetAddress", Strasse
objUser.SetInfo
*****
Damit kann jeder User seine Strasse im AD ändern.
Das ganze will ich in eine HTA-Seite einbinden. Ich
möchte
ein Eingabefeld erstellen. Wen ich die HTA-Seite
aufrufe
soll in dem Eingabefeld der bisherige Eintrag aus dem AD
dort stehen. Dann kann er ggf. geändert werden und über
eine Schaltfläche (Bsp. Eintragen) in das AD geschrieben
werden. Das ganze will ich erweitern mit mehreren
Einträgen.
Leider bekomme ich es nicht hin ein Eingabefeld zu
erstellen, welches beim Aufruf der HTA-Seite den Eintrag
aus dem AD übernimmt und zurückschreibt. Die HTA-Seite
mit
dem Eingabefeld ist einfach, aber wie binde ich mein
VBScript dort ein?
Hoffe mir kann jemand helfen.
Schonnal vielen Dank
Gruß
Jörg
.
Unter http://www.reiser-it.net/downloads/hta.zip habe ich
dir eine Beispiel zum download bereitgestellt. Diese HTA
erzeugt einen ordner im Dateisystem nachdem der Pfad im
HTML-Formular eingetragen wurde und per Button bestätigt
wurde. Das ist zwar nicht genau das was du brauchst aber
die Grundlagen sind die gleichen.

Gruß
Michael Reiser
http://www.reiser-it.net
Jörg Vosse
2004-10-06 13:16:31 UTC
Permalink
Hallo Michael,

herzlichen Dank für Deine Mühe. Das ist sehr nett.

Gruß
Jörg
Jörg Vosse
2004-10-06 13:31:30 UTC
Permalink
Hi Michael,

hier kommt schon eine - sorry:

In der Inputbox (Eingabefeld) steht ja bei Dir schon der
Ort automatisch drin über:

<input type="text" name="Ordner" value="C:\HTA-Demo"
size="20">

Den value möchte ich ja auslesen lassen.

kann ich hier auch eine Variable bnutzen, die ich vorher
deklariert habe. Durch die Variable kann ich dann z.B. den
Username auslesen und dem input übergeben.

Vielen Dank schonmal und Gruß
Jörg
Nils Kaczenski [MVP]
2004-10-06 13:49:39 UTC
Permalink
Moin,
Post by Jörg Vosse
Den value möchte ich ja auslesen lassen.
du musst dich mit dem Objektmodell des Internet Explorer (DOM) beschäftigen.
Du kannst grundsätzlich dein Eingabefeld auf folgende Weise ansprechen:

document.meinFormular.meinTextfeld.value

So kannst du lesen und schreiben. Das Wichtige zum Objektmodell findest du
recht gut bei SelfHTML erklärt (www.teamone.de/selfhtml).


Gruß, Nils
--
Nils Kaczenski - MVP Windows Server
www.kaczenski.de (jetzt neu aufgebaut!)
PM: Vorname at Webdomain
Das MVP-Buch zu Windows XP: http://www.kaczenski.de/content/view/8/27/
Michael Reiser
2004-10-06 14:08:40 UTC
Permalink
Hallo Jörg,
-----Originalnachricht-----
Hi Michael,
In der Inputbox (Eingabefeld) steht ja bei Dir schon der
<input type="text" name="Ordner" value="C:\HTA-Demo"
size="20">
Den value möchte ich ja auslesen lassen.
kann ich hier auch eine Variable bnutzen, die ich vorher
deklariert habe. Durch die Variable kann ich dann z.B.
den
Username auslesen und dem input übergeben.
Vielen Dank schonmal und Gruß
Jörg
.
Vorher eine VAriable füttern geht nicht. Aber füge am
Ende des HTML-Codes das folgende ein:

<script language="vbscript">
document.all.ordner.value = "test"
</script>

Natürlich musst du nicht "Test" einfügen sondern den
inhalt des entsprechenden AD Attributes.

Gruß
Michael Reiser
http://www.reiser-it.net

Loading...