Avatar billede ingeman Seniormester
04. maj 2003 - 18:27 Der er 19 kommentarer og
1 løsning

Asp til Ftp

Jeg ønsker at sende en fil(asc) fra web server der kører
asp til en anden ftp server på internetet ?
Avatar billede mortrr Praktikant
04. maj 2003 - 18:44 #1
VB kode til at lave en ftp-komponent:
http://www.15seconds.com/issue/981203.htm

Eller brug ServerObjects aspinet (gratis komponent):
http://www.serverobjects.com/comp/AspInet.zip


Eller lav en tekst fil, som du bruger wshell til at eksekvere:

set myFile2 = FSO.CreateTextFile(Server.MapPath("test.ftp"), 8, true)
myFile2.WriteLine "open ftp.somewhere.com"
myfile2.WriteLine "user UserName Password"
myfile2.WriteLine "get /mappe/" & filename & " /mappe/" & filename
myfile2.WriteLine "quit"

Set WshShell = Server.CreateObject("WScript.Shell")
runStr="%comspec% /c ftp -n -v -d -s:test.ftp>logfile.txt"
rc=WshShell.Run (runStr, 0, TRUE)
Avatar billede ingeman Seniormester
04. maj 2003 - 19:38 #2
Det ser ud til at forslag 2 med AspInet ikke virker da jeg bruger
IIS 5.0
Forslage 3 skal den indsættes som Asp kode ?
Avatar billede mortrr Praktikant
04. maj 2003 - 19:51 #3
aspinet virker fint med IIS 5

Og ja - scripting versionen kan indsættes i ASP.
Du skal lige oprette en FSO
Set FSO=Server.CreateObject("Scripting.FileSystemObject")
og kontrollere at IUSR_xxx har adgang til at bruge wscript.
Avatar billede ingeman Seniormester
04. maj 2003 - 19:56 #4
Server object error 'ASP 0177 : 800401f3'

Server.CreateObject Failed

Jeg får den her fejl ?

/KundeKart/inetftp.asp, line 36

Invalid ProgID. For additional information specific to this message please visit the Microsoft Online Support site located at: http://www.microsoft.com/contentredirect.asp.
Avatar billede ingeman Seniormester
04. maj 2003 - 20:49 #5
Har fået det til at virke !
Avatar billede mortrr Praktikant
04. maj 2003 - 23:34 #6
Det var nok bare fordi den ikke var blevet registreret.
(var væk et par timer)
Avatar billede ingeman Seniormester
05. maj 2003 - 18:48 #7
Ja - godt gættet.
Avatar billede mortrr Praktikant
05. maj 2003 - 19:06 #8
Kører det som det skal?
Avatar billede ingeman Seniormester
05. maj 2003 - 20:39 #9
Ja det gør det.
Ved du forresten hvordan man får:
D:\faxdir fra indtastningsfelt med ind i en access database ?
Den fjerner \ hver gang jeg gemmer.
Avatar billede mortrr Praktikant
05. maj 2003 - 20:50 #10
Det kommer an på hvor det kommer fra.
Normalt er der ikke noget problem i vbscript, men i nogle programmerings-sprog vil \ have en bestemt betydning - den bruges til at "escape" andre tegn.
Her skal man bruge 2 \ efter hinanden.
d:\\faxdir

Men normalt er der som sagt ikke noget problem i vbscript mod access, så det kan jo også være problemet først opstår når du skal vise/bruge teksten igen. Hvis du fx sætter den ind i noget javascript, vil du være nødt til først at erstatte \ med \\

Så kontroller lige om det ikke står rigtigt i databasen.
Avatar billede ingeman Seniormester
05. maj 2003 - 21:02 #11
Står rigtigt i databasen - henter det ind i javascript - da forsvinder det.
En rutine der tester for \ og derefter indsætter \\
Hvordan ser den ud ?
Avatar billede mortrr Praktikant
05. maj 2003 - 21:22 #12
Hvis det er i vbscript, så
Tekst=replace(Tekst,"\","\\")
Avatar billede ingeman Seniormester
09. maj 2003 - 16:53 #13
Jeg har 2 windows 2000 server
den ene kører IIS 5.0 Jeg skal have den til at skrive på den andens windows 2000 servers folder jeg har mapped et drev på den.
s:\server01
Jeg forsøger at skrive fra IIS 5.0 i asp til drev S:

Jeg for den fejl:

Microsoft VBScript runtime error '800a004c'
Path not found
Avatar billede mortrr Praktikant
09. maj 2003 - 17:51 #14
IIS kender ikke de drev du mapper som bruger, så du er nødt til at bruge en UNC.

\\servernavn\share\mappe
Avatar billede mortrr Praktikant
09. maj 2003 - 17:52 #15
Og hvis det er et site med anonym adgang, så bliver du nødt til at ændre den konto som bruges, fra IUSR_xxx til en domain konto med adgang til den share.
Avatar billede ingeman Seniormester
09. maj 2003 - 20:20 #16
Ja - jeg kan godt få det til at virke sådan.
men jeg oplever en meget utrolig langsom dataadgang på denne måde - om det skyldes verifecering mellem serverne ved jeg ikke.
Findes der ikke en hurtige måde at sætte det op på - måske via FTP eller
noget andet ?
Avatar billede mortrr Praktikant
10. maj 2003 - 16:17 #17
Hmm - den skal jo godt nok autorisere brugeren når du vil skrive til den anden server, men jeg mindes ikke at det er "utroligt langsomt", hvis de begge er medlem af et domain.

ftp vil ikke være hurtigere, men man kunne lave det med en webservice på den anden server, og sende informationerne over på den måde. Egentligt bare en asp-side på den anden server, som den første server kalder med fx xmlhttp. Det går hurtigt.
Avatar billede ingeman Seniormester
10. maj 2003 - 16:29 #18
Skal jeg have 2 web servere kørende ? eller hvordan mener du ?
Avatar billede mortrr Praktikant
10. maj 2003 - 16:42 #19
Ja.

Nu ved jeg jo ikke hvad det er du vil lave.
Hvor store mængder data du vil sende frem og tilbage.

Hvis det er for at sende lidt data til fx en log, så kunne det godt løses ved at have en IIS på den anden server, som modtager et request fra den første. Det er ikke specielt krævende.

Men jeg ville nok afholde mig fra at skrive filer til en anden server, men istedet lade den anden server hente fra web-serveren.
Avatar billede ingeman Seniormester
11. maj 2003 - 12:58 #20
Ok - Jeg ser hvad du mener - så jeg må jo nok affinde mig med den løsning
med IUSR_xxx som virker - selv om performance er lidt langsommere end forventet.
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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