Ik ben mijn stage aan het afronden en ik moest nog een loginscript testen dat ik heb geschreven maar ik heb nog een dikke fout ontdekt die ik niet kan oplossen. Het is geschreven in vbscript en de WSH voert het uit. Het probleem is dat ik het ip adres moet hebben van de computer die aanlogt. Ik heb op Internet een paar procedures gevonden die het ip adres kunnen opvragen maar er zitten een paar laptops met docking stations in dat netwerk en die dingen hebben 2 ip adressen waarvan er één 0.0.0.0 is. Ik zou dus iets moeten hebben dat echt het ip adres van de netwerkkaart gaat ophalen en niet van dat docking station...
Misschien met de servervariabelen HTTP_X_FORWARDED_FOR of HTTP_VIA? In ASP kun je daar iig wel mee werken.
'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
| Function EasyIP()
set sh = createobject("wscript.shell")
set fso = createobject("scripting.filesystemobject")
Set Env = sh.Environment("PROCESS")
if Env("OS") = "Windows_NT" then
workfile = fso.gettempname
sh.run "%comspec% /c ipconfig > " & workfile,0,true
else
workfile = "winipcfg.out"
sh.run "winipcfg /batch" ,0,true
end if
set sh = nothing
set ts = fso.opentextfile(workfile)
data = split(ts.readall,vbcr)
ts.close
set ts = nothing
fso.deletefile workfile
set fso = nothing
arIPAddress = array()
index = -1
for n = 0 to ubound(data)
if instr(data(n),"IP Address") then
parts = split(data(n),":")
if trim(parts(1)) <> "0.0.0.0" then
index = index + 1
ReDim Preserve arIPAddress(index)
arIPAddress(index) = trim(cstr(parts(1)))
end if
end if
next
info = ""
for each ip in arIPAddress
info = info & ip
next
EasyIP = info
End Function |
die kwam ik net tegen op mijn hd
edit:
weet niet of je er iets aan hebt... ik heb geen tijd om aandachtig naar je post te kijken, en deze code
weet niet of je er iets aan hebt... ik heb geen tijd om aandachtig naar je post te kijken, en deze code
[ Voor 14% gewijzigd door ZaZ op 26-05-2004 17:27 ]
Lekker op de bank
Nee helaas, zie hier of hierNMe84 schreef op 26 mei 2004 @ 16:59:
Misschien met de servervariabelen HTTP_X_FORWARDED_FOR of HTTP_VIA
TIP : "VBscript <> VB" net als 'JavaScript != Java'
> Google Certified Searcher
> Make users so committed to Google that it would be painful to leave
> C64 Gospel
> [SjoQ] = SjoQing
Net is getest maar ik krijg geen output met een echo commando, ik zal morgen nog eens op men stageplek testen en ik zal dan wel zien of er iets uit de bus valt, andere suggesties zijn welkom, men stage loopt vrijdag af en dat probleem moet tegen dan opgelost zijnZaZ schreef op 26 mei 2004 @ 17:25:
code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40Function EasyIP() set sh = createobject("wscript.shell") set fso = createobject("scripting.filesystemobject") Set Env = sh.Environment("PROCESS") if Env("OS") = "Windows_NT" then workfile = fso.gettempname sh.run "%comspec% /c ipconfig > " & workfile,0,true else workfile = "winipcfg.out" sh.run "winipcfg /batch" ,0,true end if set sh = nothing set ts = fso.opentextfile(workfile) data = split(ts.readall,vbcr) ts.close set ts = nothing fso.deletefile workfile set fso = nothing arIPAddress = array() index = -1 for n = 0 to ubound(data) if instr(data(n),"IP Address") then parts = split(data(n),":") if trim(parts(1)) <> "0.0.0.0" then index = index + 1 ReDim Preserve arIPAddress(index) arIPAddress(index) = trim(cstr(parts(1))) end if end if next info = "" for each ip in arIPAddress info = info & ip next EasyIP = info End Function
die kwam ik net tegen op mijn hd
edit:
weet niet of je er iets aan hebt... ik heb geen tijd om aandachtig naar je post te kijken, en deze code
glashio schreef op 26 mei 2004 @ 19:45:
TIP : "VBscript <> VB" net als 'JavaScript != Java'
offtopic:
Ik zie je punt niet.
TS vroeg om een oplossing in VBScript, dus gaf ik hem een oplossing die bij mij in een VBScript werkt. Alleen gebruik ik het in een ASP omgeving, die waarschijnlijk die variabele zet.
Ik zie je punt niet.
'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.
NMe84 schreef op 26 mei 2004 @ 20:42:
[...]
offtopic:
Ik zie je punt niet.TS vroeg om een oplossing in VBScript, dus gaf ik hem een oplossing die bij mij in een VBScript werkt. Alleen gebruik ik het in een ASP omgeving, die waarschijnlijk die variabele zet.
Bij mij worden .asp-pagina's door dllhost uitgevoerd, en niet door wscript.exeVerwijderd schreef op 26 mei 2004 @ 16:56:
Het is geschreven in vbscript en de WSH voert het uit.
* Barca zweert ook bij fixedsys... althans bij mIRC de rest is comic sans
of je leest ff wat het scriptje doet natuurlijkVerwijderd schreef op 26 mei 2004 @ 20:23:
[...]
Net is getest maar ik krijg geen output met een echo commando, ik zal morgen nog eens op men stageplek testen en ik zal dan wel zien of er iets uit de bus valt, andere suggesties zijn welkom, men stage loopt vrijdag af en dat probleem moet tegen dan opgelost zijn
zo beter dan?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
| MsgBox EasyIP
Function EasyIP()
set sh = createobject("wscript.shell")
set fso = createobject("scripting.filesystemobject")
Set Env = sh.Environment("PROCESS")
if Env("OS") = "Windows_NT" then
workfile = fso.gettempname
sh.run "%comspec% /c ipconfig > " & workfile,0,true
else
workfile = "winipcfg.out"
sh.run "winipcfg /batch" ,0,true
end if
set sh = nothing
set ts = fso.opentextfile(workfile)
data = split(ts.readall,vbcr)
ts.close
set ts = nothing
fso.deletefile workfile
set fso = nothing
arIPAddress = array()
index = -1
for n = 0 to ubound(data)
if instr(data(n),"IP Address") then
parts = split(data(n),":")
if trim(parts(1)) <> "0.0.0.0" then
index = index + 1
ReDim Preserve arIPAddress(index)
arIPAddress(index) = trim(cstr(parts(1)))
end if
end if
next
info = ""
for each ip in arIPAddress
if info = "" then
info = ip
else
info = info & "," & ip
end if
next
EasyIP = info
End Function |
dan krijg je de ip's van alle kaarten als string terug gescheiden door een komma.
Lekker op de bank
Ik weet heus wel hoe ik een functie moet aanroepen hoor
maar ik krijg gewoon geen output om één of andere reden maar ik heb het kunnen oplossen, vandaag op Internet een andere routine gevonden die het wel goed doet.
Toch bedank voor de reply's
Toch bedank voor de reply's
Pagina: 1