Avatar billede corona10 Nybegynder
23. maj 2008 - 15:06 Der er 6 kommentarer og
1 løsning

Brug af WScript

På en .html side har jeg:

<body><SCRIPT LANGUAGE="VBScript">
document.write ("VBScript says hello world!<br>")
set WshShell = WScript.CreateObject("WScript.Shell")
WScript.Echo "Hello World!"
</SCRIPT>

Jeg får dog kun en udskrift fra document.write på siden og browseren siger ikke noget om fejl i script.

Eksemplet er stjålet fra
http://www.pctools.com/guides/scripting/detail/107/?act=reference

Hvad er det jeg ikke forstår?
Avatar billede w13 Novice
23. maj 2008 - 15:11 #1
Jeg bare ikke, du kan bruge det på en .html-side. Det skal nok kun bruges i en VB-applikation, f.eks. et VBA-dokument.
Avatar billede corona10 Nybegynder
28. maj 2008 - 08:42 #2
Nej det kan da godt være jeg er ude i noget snavs der ikke kan lade sig gøre.
Det jeg gerne vil i sidste ende er at hente den variabel der hedder %userprofile% og en bestemt value i reg db.

Det er dette jeg har tænkt mig at bruge WshShell til... men det kan man måske ikke?
Avatar billede morten_leth Nybegynder
29. maj 2008 - 11:49 #3
Hej Corona10

Det du har gang i der vil ikke komme til at fungere.
Du er nødt til at bruge det i et enten et vbscript, HTA applikation, eller en asp side.
En af de muligheder kan du benytte dig af, der sandsynligvis flere, men det er lige dem jeg sådan lige umiddelbart kan hjælpe dig med.

<html>

<head>

<title>Tweakomatic 1.0</title>

<HTA:APPLICATION
    ID="objTweakomatic"
    APPLICATIONNAME="Tweakomatic"
    SCROLL="no"
    SINGLEINSTANCE="yes"
    WINDOWSTATE="maximize"
>
</head>

<style>
</style>



<SCRIPT LANGUAGE="VBScript">
    sub window_onload
        msgbox "Hello World!"
    end sub
</script>
<body>
<table>
<tr><td><span id="test"></span></td></tr>
</table>
</body>
</html>

Dette her kan du lave i en .hta fil, derfra kan du sådan set lave stort set de samme ting som du kan i et vbscript, med få undtagelser.

Hvis du benytter dig af eksemplet du selv kommer med skal du slette linjen der hedder jscript og kalde script for .vbs i enden så kan du kommer videre derfra, til sidst er der ASP som er serverside.
Avatar billede morten_leth Nybegynder
29. maj 2008 - 15:58 #4
Det her fungere og trækker miljøvariablen du skal bruge ud og skriver den.

<html>

<head>

<title>Test</title>

<HTA:APPLICATION
    ID="objTweakomatic"
    APPLICATIONNAME="Test"
    SCROLL="no"
    SINGLEINSTANCE="yes"
    WINDOWSTATE="no"
>
</head>

<style>
</style>



<SCRIPT LANGUAGE="VBScript">
    sub window_onload
    Set WshShell = CreateObject("WScript.Shell")
    Set WshProcessEnv = WshShell.Environment("Process")
sUserName = WshProcessEnv("username")
        test.innerhtml = sUserName
    end sub
</script>
<body>
<table width="100%" border="3">
<tr><td><span id="test"></span>
</td>
</tr>
</table>
</body>
</html>
Avatar billede corona10 Nybegynder
02. juni 2008 - 12:56 #5
Tak for hjælpen, det ser ud til at virke. Der er dog det issue at hta kan være meget farligt at afvikle og det derfor ryger i min (og andres firewall). Men er det her hta nødvendigt, når jeg bare skal have username??? Jeg har som sådan ikke brug for at vise det for nogen, jeg skal bare bruge det i en sti jeg vil mappe til.
asp dur ikke, da det afvikles server side bliver username, den der er logget på serveren, og det er ikke meningen. det skal være username på den bruger der går ind på en side jeg er interesseret i.

Microsoft siger:
For our purposes an HTA is nothing more than a way to provide a graphical user interface for your scripts

... og dette gui har jeg ikke brug for
PS du får point når du laver et svar :)
Avatar billede morten_leth Nybegynder
02. juni 2008 - 15:01 #6
Som jeg læser det skal du jo faktisk bare have et logonscript der mapper et netværksdrev?

for hvis det er tilfældet vil jeg råde dig til bare at lave et logon.vbs hvori du skriver de ting du skal bruge....

Er det hvad du vil have ?
Avatar billede corona10 Nybegynder
02. juni 2008 - 15:43 #7
Hej Morten
Ja det er det.
Det er sikkert mere simpelt end alt det jeg har gang i.
Jeg skal finde en value i reg db, der fortæller om man har Office 2003 / 2007 installeret. Afhængig heraf skal jeg linke til resourcer der findes på netværksdrev eller lokalt på brugerens maskine. Findes resourcen lokalt, ligger den på en sti der indeholder %username%

Hvis du kan hjælpe med dette vil jeg gerne oprette et nyt spørgsmål så du kan få point for dette :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester