/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Hente oplysninger fra brugerens CD
Fra : Kasper Katzmann


Dato : 29-01-04 21:45

Kan man, med asp, hente oplysninger fra brugerens CD?

Jeg sidder og hygger mig med en lille database/ASP ting hvor jeg lister
oplysninger om en masse CD'er. Så var det jo at jeg tænkte på om man, ved at
trykke på en knap, kunne hente oplysninger om den eller de filer der ligger
på skiven?

F.eks. ligger der fælgende fil på disken: minfil.exe

Så vil jeg gerne have oplysningerne om Filnavn, Extension og Størrelse (plus
hvad man eller kan hente).

Kan man det?

Mvh
Kasper Katzmann



 
 
Thomas (30-01-2004)
Kommentar
Fra : Thomas


Dato : 30-01-04 07:59

Hej Kasper
Du skriver:

> Jeg sidder og hygger mig med en lille database/ASP ting hvor jeg lister
> oplysninger om en masse CD'er. Så var det jo at jeg tænkte på om man, ved
at
> trykke på en knap, kunne hente oplysninger om den eller de filer der
ligger
> på skiven?

Prøv nedenstående:

Set obj = CreateObject("Scripting.FileSystemObject")
set fol= obj.GetFolder(sti)
set filer = fol.files
for each filnavn in filer
"gør noget med filnavn"
next

> Så vil jeg gerne have oplysningerne om Filnavn, Extension og Størrelse
(plus
> hvad man eller kan hente).

Prøv
version = obj.GetFileVersion(Filnavn)

Vh
Thomas



Jens Gyldenkærne Cla~ (30-01-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 30-01-04 11:44

Thomas skrev:

> Set obj = CreateObject("Scripting.FileSystemObject")
> set fol= obj.GetFolder(sti)
> set filer = fol.files


Ovenstående finder filer på serveren. Kasper spurgte om muligheden
for at finde filer på klienten.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Thomas (30-01-2004)
Kommentar
Fra : Thomas


Dato : 30-01-04 12:11

Jens skrev

> > Set obj = CreateObject("Scripting.FileSystemObject")
> > set fol= obj.GetFolder(sti)
> > set filer = fol.files
>
>
> Ovenstående finder filer på serveren. Kasper spurgte om muligheden
> for at finde filer på klienten.

Ja - det er rigtigt - det skal stå i et clientside script som foreksempel
nedenstående:

....
%>
<script type="text/vbscript">
Set obj = CreateObject("Scripting.FileSystemObject")
set fol= obj.GetFolder("C:\windows")
set filer = fol.files
for each filnavn in filer
msgbox filnavn
next
</script>
<%
.....



Jens Gyldenkærne Cla~ (30-01-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 30-01-04 13:08

Thomas skrev:

> Ja - det er rigtigt - det skal stå i et clientside script som
> foreksempel nedenstående:

Så giver det lidt mere mening.


Men...

> <script type="text/vbscript">

Ovenstående virker alene i Internet Explorer. Scriptet vil slet
ikke blive læst af andre browsere (så vidt jeg ved er der ikke
andre end IE der understøtter vbscript).


> Set obj = CreateObject("Scripting.FileSystemObject")
> set fol= obj.GetFolder("C:\windows")

En bare nogenlunde opdateret IE skulle gerne forhindre at et
fremmed script får adgang til filsystemet.

Jeg prøvede at smide din kode direkte ind i et tomt dokument. Jeg
får først oplysning om at et ActiveX-object kan give
sikkerhedsmæssige problemer og mulighed for at forhindre objektet i
at samarbejde med andre objekter. Hvis jeg siger nej, kommer der en
scriptfejl og der sker ikke mere. Hvis jeg siger ja, er siden bare
tom.

Jeg kan huske at en gammel bug gjorde det muligt at vise indholdet
af c-drevet med IE (og tidlige udgaver af Opera 7). Men hullet er
formentlig lukket hos en god del af brugerne, og jeg er ikke engang
sikker på at det kan bruges til at vise cd-drevet. Man kan jo fx
ikke vide hvilket drevbogstav der er koblet til et cd-drev.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Thomas (30-01-2004)
Kommentar
Fra : Thomas


Dato : 30-01-04 14:04

Jens skrev
> > <script type="text/vbscript">
>
> Ovenstående virker alene i Internet Explorer. Scriptet vil slet
> ikke blive læst af andre browsere (så vidt jeg ved er der ikke
> andre end IE der understøtter vbscript).

- Scripting.FileSystemObject kan også kaldes fra et javascript

> > Set obj = CreateObject("Scripting.FileSystemObject")
> > set fol= obj.GetFolder("C:\windows")
>
> En bare nogenlunde opdateret IE skulle gerne forhindre at et
> fremmed script får adgang til filsystemet.

Ja - brugeren skal give ret til at scripte objecter "not marked safe"

> Jeg prøvede at smide din kode direkte ind i et tomt dokument. Jeg
> får først oplysning om at et ActiveX-object kan give
> sikkerhedsmæssige problemer og mulighed for at forhindre objektet i
> at samarbejde med andre objekter. Hvis jeg siger nej, kommer der en
> scriptfejl og der sker ikke mere. Hvis jeg siger ja, er siden bare
> tom.

- når jeg kører det (har lige prøvet) får jeg en msgbox pr. filnavn i
c:\windows (jeg har IE6 sp1)

> Jeg kan huske at en gammel bug gjorde det muligt at vise indholdet
> af c-drevet med IE (og tidlige udgaver af Opera 7). Men hullet er
> formentlig lukket hos en god del af brugerne, og jeg er ikke engang
> sikker på at det kan bruges til at vise cd-drevet. Man kan jo fx
> ikke vide hvilket drevbogstav der er koblet til et cd-drev.

Nej - der bliver nødt til at være en dialog med brugeren, men faktisk mener
jeg at man kan
spørge til hvilke drev der er tilgængelige - kan ikke lige huske hvordan...
Du har generelt ret - det er svært at få adgang til brugerens drev, og denne
metode er den eneste jeg kender.

Vh
Thomas



Jens Gyldenkærne Cla~ (30-01-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 30-01-04 14:29

Thomas skrev:

> - Scripting.FileSystemObject kan også kaldes fra et javascript

O.k. Hvordan ser koden så ud?


> - når jeg kører det (har lige prøvet) får jeg en msgbox pr.
> filnavn i c:\windows (jeg har IE6 sp1)

Mærkeligt. Jeg har nu prøvet lidt mere - både at lægge det på en
webserver og at kalde dokumentet direkte. Hverken i IE6 eller IE5.5
vil det virke (nu får jeg ikke engang en dialogboks).


> Du har generelt ret - det er svært at få adgang til brugerens
> drev,

Ja - heldigvis. Jeg foretrækker afgjort at filsystemet på min
computer som udgangspunkt er "Off Limits" for alle websider. Hvis
en webside skal se en lokal fil, kan det ske med et fil-input hvor
man selv finder filen frem.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Thomas (30-01-2004)
Kommentar
Fra : Thomas


Dato : 30-01-04 15:07

Jens skrev
> > - Scripting.FileSystemObject kan også kaldes fra et javascript
>
> O.k. Hvordan ser koden så ud?

Den kunne se således ud:

<script language="JScript">
{
var fso, s = "";
fso = new ActiveXObject("Scripting.FileSystemObject");
s += fso.GetFilename("C:\windows\notepad.exe");
window.alert(s);
}
</script>

> > - når jeg kører det (har lige prøvet) får jeg en msgbox pr.
> > filnavn i c:\windows (jeg har IE6 sp1)
>
> Mærkeligt. Jeg har nu prøvet lidt mere - både at lægge det på en
> webserver og at kalde dokumentet direkte. Hverken i IE6 eller IE5.5
> vil det virke (nu får jeg ikke engang en dialogboks).

Jeg har ingen god forklaring...

> > Du har generelt ret - det er svært at få adgang til brugerens
> > drev,
>
> Ja - heldigvis. Jeg foretrækker afgjort at filsystemet på min
> computer som udgangspunkt er "Off Limits" for alle websider. Hvis
> en webside skal se en lokal fil, kan det ske med et fil-input hvor
> man selv finder filen frem.

Enig

Vh
Thomas



Jens Gyldenkærne Cla~ (30-01-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 30-01-04 15:25

Thomas skrev:

>>> - Scripting.FileSystemObject kan også kaldes fra et
>>> javascript

> <script language="JScript">

JScript er heller ikke javascript - og lige som vbscript et sprog
man ikke skal forvente noget af i andre browsere end IE.


> {
> var fso, s = "";
> fso = new ActiveXObject("Scripting.FileSystemObject");
> s += fso.GetFilename("C:\windows\notepad.exe");
> window.alert(s);
> }
> </script>


Ovenstående kan jeg heller ikke få til at virke i IE.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Thomas (30-01-2004)
Kommentar
Fra : Thomas


Dato : 30-01-04 15:41

Jens skrev
> >>> - Scripting.FileSystemObject kan også kaldes fra et
> >>> javascript
>
> > <script language="JScript">
>
> JScript er heller ikke javascript - og lige som vbscript et sprog
> man ikke skal forvente noget af i andre browsere end IE.

Okay - det var jeg ikke klar. (bruger selv kun vbscript)



> > {
> > var fso, s = "";
> > fso = new ActiveXObject("Scripting.FileSystemObject");
> > s += fso.GetFilename("C:\windows\notepad.exe");
> > window.alert(s);
> > }
> > </script>
>
>
> Ovenstående kan jeg heller ikke få til at virke i IE.

Hm - virker hos mig - dog returneres filnavnet "otepad.exe"
(IIS er Windows Server 2003)

Vh
Thomas



Jørn Andersen (30-01-2004)
Kommentar
Fra : Jørn Andersen


Dato : 30-01-04 16:56

On Fri, 30 Jan 2004 15:25:05 +0100, Jens Gyldenkærne Clausen
<jens@gyros.invalid> wrote:

>> <script language="JScript">
>
>JScript er heller ikke javascript - og lige som vbscript et sprog
>man ikke skal forvente noget af i andre browsere end IE.

Sprogene er der vist ikke den store forskel på, men jeg ville også
skrive:
<script language="javascript">

eller (vistnok) rettere:
<script type="text/javascript">

eller måske (livrem og seler):
<script type="text/javascript" language="javascript">

Good luck!

--
Jørn Andersen,
Brønshøj

Jens Gyldenkærne Cla~ (30-01-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 30-01-04 17:08

Jørn Andersen skrev:

>> JScript er heller ikke javascript - og lige som vbscript et
>> sprog man ikke skal forvente noget af i andre browsere end IE.

> Sprogene er der vist ikke den store forskel på,

Både og. De deler syntaksen og de fleste funktioner, men så vidt
jeg ved har JScript en del tilføjelser der ikke findes i
Javascript.


> men jeg ville også skrive:
> <script language="javascript">

Lad vær' med det. Languageparameteren er forældet og overflødig.


> eller (vistnok) rettere:
> <script type="text/javascript">


Nemlig. Der er mig bekendt ingen browsere der har gavn af
language="javascript" i stedet for (eller sammen med)
type="text/javascript".
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Jørn Andersen (29-01-2004)
Kommentar
Fra : Jørn Andersen


Dato : 29-01-04 22:35

On Thu, 29 Jan 2004 21:44:39 +0100, "Kasper Katzmann"
<kasper@milkkatzmann.dk> wrote:

>Kan man, med asp, hente oplysninger fra brugerens CD?

Ikke med ASP alene. Det afvikles som bekendt alene på serveren.

Men det burde vel kunne lade sig gøre at lade noget clientside
JavaScript udfylde nogle Form-felter, som så sender info til en
ASP-side, der gemmer info i en db.

<snip>
>F.eks. ligger der fælgende fil på disken: minfil.exe
>
>Så vil jeg gerne have oplysningerne om Filnavn, Extension og Størrelse (plus
>hvad man eller kan hente).

Nu er jeg ikke så stiv i clientside scripting, men er der ikke et
FileSystem Object til rådighed her?

Good luck!

--
Jørn Andersen,
Brønshøj

Søg
Reklame
Statistik
Spørgsmål : 177549
Tips : 31968
Nyheder : 719565
Indlæg : 6408822
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste