Jeg har et problem, jeg er ved at skrive et VB som overskriver filer, jeg skal derfor checke om filen er i brug inden jeg kan overskrive, måden jeg checker dette er følgende:
Public Function FileInUse(pFile As String) As Boolean FileInUse = False Dim h As Integer
On Error Resume Next
\' get a file handle h = FreeFile()
Open pFile For Random Access Read Write Lock Read Write As #h
If Err.Number = 0 Then Close #h Else FileInUse = True End If End Function
Mit problem består i, at de filer som jeg skal overskrive altid er skrivebeskyttede. Derfor virker min funktion ikke da, den prøver at åben filen.
Any ideas til en anden måde at checke på eller ændring af min kode ????
Alt hvad du har lavet indtil nu er helt okay jeg vil foreslå at du bare leder efter en Kilde Kode eller giver dig til at finde en måde at ophæve Read only ( Jeg vil gå ud fra at man ikke bare kan ophæve den da det jo netop er lavet til det modsatte. Jeg har prøvet at lede på Palnet Source Code men der var ikke noget af det du mangler :(
Hvorfor prøver du ikke bare at lave en dir på filen og derefter åbne den for input?
Public Function FileInUse(pFile As String) As Boolean FileInUse = False On Error Goto ErrorHandler
if dir(pFile) <> \"\" then Open pFile for Input as FreeFile() End If
ExitFunction: Exit Function
ErrorHandler: FileInUse = True Resume ExitFunction End Function
hth jes
Synes godt om
Ny brugerNybegynder
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.