Ik probeer een naar een temp folder geupload plaatje te verwijderen, maar krijg geen toegang meer tot het bestand?!
error:
Dit is mijn code:
De functie closeFile heb ik er zelf bij gemaakt, maar daar loopt ie nu helemaal op stuk (neverending loop). Ik heb deze code gevonden op dotnet247.
Waarom mag ik het plaatje niet meer verwijderen?
Ik heb toch netjes alles gesloten, disposed ed?
De plek van de error is aangegeven met ->
error:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| The process cannot access the file "c:\Begeer Develop\Fase 2 \admin\images\temp\Stapelswerk......jpg" because it is being used by another process. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.IO.IOException: The process cannot access the file "c:\Begeer Develop\Fase 2\admin\images\temp\Stapelswerk......jpg" because it is being used by another process. Source Error: Line 306: dim mobjFileInfo As FileInfo Line 307: mobjFileInfo = New FileInfo(adminTmp_path & td_afbeelding_naam.Text) Line 308: mobjFileInfo.delete() Line 309: 'Leeg het hidden textfield ivm backbutton probs Line 310: td_afbeelding_naam.Text = "" |
Dit is mijn code:
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
| sub resize( insert_id as Integer )
if td_afbeelding_naam.Text <> "" then
' create an Image object and load the image
Dim objImage as System.Drawing.Image =
System.Drawing.Image.FromFile( adminTmp_path & td_afbeelding_naam.Text )
objImage.Save(choosen_path & insert_id &"large.jpg",
ImageFormat.jpeg)
' get a Thumbnail image from the above image....width is approx 120px
dim factor as double = 120 / objImage.width
dim width as Integer = objImage.width * factor
dim height as Integer = objImage.height * factor
Dim objSourceBitmap As Drawing.Bitmap = New Bitmap
(adminTmp_path & td_afbeelding_naam.Text)
Dim objTargetBitmap As Drawing.Bitmap = New Bitmap(width, height)
Dim objGraphics As Drawing.Graphics = Graphics.FromImage
(objTargetBitmap)
objGraphics.InterpolationMode =
Drawing2D.InterpolationMode.HighQualityBicubic
Dim recCompression As Rectangle = New Rectangle(0, 0, width, height)
objGraphics.DrawImage(objSourceBitmap, recCompression)
objTargetBitmap.Save(choosen_path & insert_id &"small.jpg", ImageFormat.Jpeg)
' dispose of the images
objImage.Dispose()
objSourceBitmap.Dispose()
objTargetBitmap.Dispose()
objGraphics.Dispose()
' clean up.
objImage = Nothing
objSourceBitmap = Nothing
objTargetBitmap = Nothing
objGraphics = Nothing
'zet naam in tmp var
dim afbeelding as string = td_afbeelding_naam.Text
'Leeg het hidden textfield ivm backbutton probs
td_afbeelding_naam.Text = ""
td_plaatje.controls.clear()
closeFile( adminTmp_path & afbeelding )
'verwijder eerder upgeloade afbeelding
-> dim mobjFileInfo As FileInfo
-> mobjFileInfo = New FileInfo(adminTmp_path & afbeelding )
-> mobjFileInfo.delete()
end if
end sub
function closeFile( FullPath as string )
while(true)
try
Dim fs As New FileStream(FullPath, FileMode.Append
FileAccess.Write, FileShare.None)
'FileStream fs = new FileStream(FullPath,
FileMode.Append, FileAccess.Write, FileShare.None
fs.Close()
exit try
catch
Thread.Sleep(1000)
end try
end while
end function |
De functie closeFile heb ik er zelf bij gemaakt, maar daar loopt ie nu helemaal op stuk (neverending loop). Ik heb deze code gevonden op dotnet247.
Waarom mag ik het plaatje niet meer verwijderen?
Ik heb toch netjes alles gesloten, disposed ed?
De plek van de error is aangegeven met ->
[ Voor 4% gewijzigd door Verwijderd op 26-06-2003 10:50 ]