webForumDet fria alternativet

FileSystemObject

6 svar · 270 visningar · startad av colione

colioneMedlem sedan juni 20014 421 inlägg
#1

Det var ett bra tag sen nu som jag höll på med ASP. Jag har nu på senare tid mest suttit med klientprogrammering och sådant.

Jag kände nu för at plocka upp lite gamla kunskaper med kom då på att de äro helt döda. Kan någon hjälpa mig med detta:

<% @LANGUAGE="VBScript"%>
<% Response.Buffer=TRUE%>
<%
  Set MyFSO = Server.CreateObject("Scripting.FileSystemObject")
  Set MyFolder = Blaha
  Set MyFile = Blaha.txt
  If MyFSO.FolderExists(MyFolder) = True AND MyFSO.FileExists("" & Server.MapPath() & "/" & MyFolder & MyFile) = False  Then  
  MyFSO.MoveFile(Server.MapPath() & MyFile, Server.MapPath() & MyFolder & MyFile)
  Else
  MyFSO.CreateFolder(MyFolder)
  MyFSO.MoveFile(Server.MapPath() & MyFile , Server.MapPath() & MyFolder & MyFile )
%>

Jag får felet:

Feltyp:
Microsoft VBScript compilation (0x800A0414)
Cannot use parentheses when calling a Sub
/Default.asp, line 8, column 79
MyFSO.MoveFile(Server.MapPath() & MyFile, Server.MapPath() & MyFolder & MyFile)

@ndersMedlem sedan juni 200032 969 inlägg
#2

Har du provat att ta bort de yttre parenteserna, som felmeddelandet föreslår?

OveRRidEMedlem sedan feb. 200112 078 inlägg
#3

Server.mappath är en funktion som måste ha en parameter för att returnera ett giltigt värde. Dessutom har du glömt ett par \.

<% @LANGUAGE="VBScript"%>
<% Response.Buffer=TRUE%>
<%
  Set MyFSO = Server.CreateObject("Scripting.FileSystemObject")
  Set MyFolder = Blaha
  Set MyFile = Blaha.txt
  If MyFSO.FolderExists(MyFolder) = True AND MyFSO.FileExists("" & Server.MapPath(".") & "\" & MyFolder & "\" & MyFile) = False  Then  
  MyFSO.MoveFile(Server.MapPath(".") & "\" & MyFile, Server.MapPath(".") & "\" & MyFolder & "\" & MyFile)
  Else
  MyFSO.CreateFolder(MyFolder)
  MyFSO.MoveFile(Server.MapPath(".") & "\" & MyFile , Server.MapPath(".") & "\" &  MyFolder & "\" & MyFile )
%>

Skrivet direkt ur huvudet.

colioneMedlem sedan juni 20014 421 inlägg
#4

Ahh, tack så mycket, jag provar den när jag kommer hem.

colioneMedlem sedan juni 20014 421 inlägg
#5

Okej första delen löst, tack till dig OveRRidE.

Nu till ytterliggare ett fel som genereras:

<% @LANGUAGE="VBScript"%>
<% Response.Buffer=TRUE%>
<%
  Dim MyFolder, MyFile, MyFSO
  Set MyFSO = Server.CreateObject("Scripting.FileSystemObject")
  Set MyFolder = "Blaha"
  Set MyFile = "Blaha.txt"
  If MyFSO.FolderExists(MyFolder) = True AND MyFSO.FileExists(Server.MapPath(".") & "\" & MyFolder & "\" & MyFile) = False  Then  
  MyFSO.MoveFile Server.MapPath(".") & "\" & MyFile, Server.MapPath(".") & "\" & MyFolder & "\" & MyFile
  Else
  MyFSO.CreateFolder(MyFolder)
  MyFSO.MoveFile Server.MapPath(".") & "\" & MyFile , Server.MapPath(".") & "\" &  MyFolder & "\" & MyFile
  end if
  Set MyFSO = Nothing
  response.write "Objektet "& MyFile &" skapades som det skulle!"
%>

Felmeddelandet ser ut såhär:
Feltyp:
Microsoft VBScript runtime (0x800A01A8)
Object required: '[string: "Blaha"]'
/Default.asp, line 6

PatrikBMedlem sedan mars 20002 836 inlägg
#6

Ta bort Set framför Set myFolder och Set myFile .... de är strängar, inga objekt.

cya,
PatrikB

colioneMedlem sedan juni 20014 421 inlägg
#7

tack

134 ms totalt · 3 externa anrop · v20260731065814-full.102f7fcd
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)