---
title: "Hinna ta bort folder...?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/10019-hinna-ta-bort-folder"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "ElMaco"
published: "2001-06-12T15:56:00.000Z"
updated: "2001-06-12T18:10:00.000Z"
replies: 5
views: 214
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/10019-hinna-ta-bort-folder"
---

# Hinna ta bort folder...?

## #1 — ElMaco, 2001-06-12T15:56Z

Hejsan.

Jag har gett mig på att skapa ett filadministreringssystem men har stött på följande irriterande bugg.

Om foldern innehåller många filer hinner inte all data kopieras till den nya destinationen innan servern vill ta bort den gamla foldern. Detta skapar rättighetskonflikter och fildelningsproblem. Hur löser jag lämpligen detta? Förslag?

```
'---Sökväg
	path = Server.MapPath("..\accounts") & "\"
	
	'---Skapar serverobjekt
	Set FileSys = Server.CreateObject("Scripting.FileSystemObject")

	'---Kollar om filen finns.
	If FileSys.FolderExists(path & accountfolder) And Not accountfolder = new_accountfolder Then
		'---Kopierar samtliga foldrar, false = får ej skriva över
		FileSys.CopyFolder path & accountfolder, path & new_accountfolder, false
		
		'---Kollar att foldern skapats
		If FileSys.FolderExists(path & new_accountfolder) Then
			FileSys.DeleteFolder path & accountfolder
		Else
			Response.Write "<SCRIPT>alert(""Det har uppstått ett fel.\nFoldern tillhörande " & companyname & " med namnet " & accountfolder & " \nkunde inte byta namn till " & new_accountfolder & ".\nFoldernamnet är upptaget."");history.back();</SCRIPT>"
		
		all_ok = False
		End If
		
		
		
	ElseIf Not FileSys.FolderExists(path & accountfolder) Then
		Response.Write "<SCRIPT>alert(""Det har uppstått ett fel.\nFoldern tillhörande " & companyname & " med namnet " & accountfolder & " finns inte.\nDärför kunder foldern inte uppdateras."");history.back();</SCRIPT>"
	
		all_ok = False
	
	'ElseIf accountfolder = new_accountfolder Then
	'Om den uppdaterade foldern heter likadant skall inget ske.
	
	End If
```

Permalänk: https://www.webforum.nu/p/10019

## #2 — ElMaco, 2001-06-12T15:59Z

object.Name \[= newname\] 

...lär återkomma om det inte funkar. :)

Permalänk: https://www.webforum.nu/p/271595

## #3 — Toonster, 2001-06-12T16:34Z

Detta kan bli "kruxigt". Det säkraste är nog någon typ av steg för steg funktion. Genom att dela upp olika funktioner på olika scriptsidor, så kanske FSO klarar av detta.

Problemet är ju att borttagning och filkopiering sker i bakgrunden i separata prcesser.

Möjligt man kan fixa det genom sköta all kopiering först, kolla antalet filer i respektive mapp, sedan ta bort den gamla. 

/T

Permalänk: https://www.webforum.nu/p/271596

## #4 — Vide, 2001-06-12T16:47Z

En kanske inte så bra idé är att efter kopieringen så skapar du en loop som fortsätter tills filen är bort... men du får göra den loopen riktigt säker... :)

Permalänk: https://www.webforum.nu/p/271597

## #5 — emission, 2001-06-12T17:59Z

Din strategi tyder på att du inte litar på att MoveFolder gör det den ska, men tänk på att en flytt går mycket snabbare än en kopiering, så risken för fel är betydligt mindre.

Permalänk: https://www.webforum.nu/p/271598

## #6 — ElMaco, 2001-06-12T18:10Z

folderObject.Name \[= newname\] funkade som smort. Där klippte jag 30 rader kod...

sånt händer. :)

Permalänk: https://www.webforum.nu/p/271599

---

Tråden på webben: https://www.webforum.nu/amne/asp/10019-hinna-ta-bort-folder
