Zufälliger Artikel

Problemstellung:

Wie kann ich mit API eine Datei löschen? 

Private Declare Function DeleteFile Lib "kernel32" Alias "DeleteFileA" _
        (ByVal lpFileName As String) As Long
        'Die Funktion liefert zwei verschiedene Rückgabewerte:
        '"0": die Datei konnte nicht gelöscht werden
        '"1": die Datei konnte erfolgreich gelöscht werden
        
Public Function API_DeleteFile(strFile As String) As Long
'*******************************************
'Name:      API_DeleteFile (Function)
'Purpose:   Datei löschen
'Author:    Tommyk
'Date:      März 11, 2004, 04:05:37
'Inputs:    strFile=Pfad und Name der Quelldatei
'Output:
'*******************************************
   API_DeleteFile = DeleteFile(strFile)
   If API_DeleteFile = 0 Then
      MsgBox "Löschen der Datei " & strFile & " Fehlgeschlagen", vbInformation, "Fehler"
      Exit Function
   Else
      MsgBox "Die Datei wurde erfolgreich gelöscht.", vbInformation, "Erfolgreich"
   End If
End Function


Aufruf:

API_DeleteFile "C:\Test\Test2\Crypter.dll"

würde die Datei "C:\Test\Test2\Crypter.dll" löschen.

 

Ähnliche Artikel

Home

1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

Problemstellung:

Die Dömanenfunktionen wie DLookup, DCount, DSum usw. sind schon eine feine Sache.
Der Haken ist nur das diese Funktionen unendlich langsam sind.
Eine Alternative wären SQL-Funktionen die in einem Recordset aufgerufen werden.
Hier eine Lösung dafür. 

Verweis auf die Microsoft DAO 3.X Object Library erforderlich

Public Enum ltDomWert
     ltDLookup = 0
     ltDCount = 1
     ltDMax = 2
     ltDMin = 3
     ltDFirst = 4
     ltDLast = 5
     ltDSum = 6
     ltDAvg = 7
 End Enum
 
 Function fcDomWert(Expression As String, Domain As String, _
     Optional Criteria As String, _
     Optional ltDomArt As ltDomWert) As Variant
     Dim bytWert As Byte
     Dim strSQL As String
     Dim rs As DAO.Recordset
     If IsMissing(ltDomArt) Then
         bytWert = 0
     Else
         bytWert = ltDomArt
     End If
     Select Case bytWert
         Case 0: strSQL$ = "SELECT " & Expression$ & " FROM " & Domain$
         Case 1: strSQL$ = "SELECT COUNT(" & Expression$ & ") FROM " & Domain$
         Case 2: strSQL$ = "SELECT MAX(" & Expression$ & ") FROM " & Domain$
         Case 3: strSQL$ = "SELECT SUM(" & Expression$ & ") FROM " & Domain$
         Case 4: strSQL$ = "SELECT FIRST(" & Expression$ & ") FROM " & Domain$
         Case 5: strSQL$ = "SELECT LAST(" & Expression$ & ") FROM " & Domain$
         Case 6: strSQL$ = "SELECT SUM(" & Expression$ & ") FROM " & Domain$
         Case 7: strSQL$ = "SELECT AVG(" & Expression$ & ") FROM " & Domain$
     End Select
     If Nz(Criteria$, "") <> "" Then strSQL$ = strSQL$ & " WHERE " & Criteria$
     Set rs = CurrentDb.OpenRecordset(strSQL$, dbOpenForwardOnly)
     If rs.EOF Then
         fcDomWert = Null
     Else
         fcDomWert = rs.Fields(0)
     End If
     rs.Close
     Set rs = Nothing
 End Function

Mit dieser Funktion können alle Domänenfunktionen abgedeckt werden.
Aufruf:
Um z.B. die Summe von Datensätzen zu erhalten die einem bestimmten Kriterium entsprechen.

Dim i As Integer
 i = fcDomWert("DeinAutowertfeld", "DeineTabelle", "[DeinKriteriumsfeld] = " _
     & DeinKriterium, ltDCount)


Das ist nur ein Bsp.

Ähnliche Artikel

Kommentar schreiben

Sicherheitscode
Aktualisieren

Login Form

1.png1.png9.png1.png3.png6.png2.png
Heute13
Gestern75
Diese Woche411
Dieser Monat1295
Total1191362

  • IP: 54.81.116.187
  • Browser: Unknown
  • Version:
  • OS: Unknown

Online

2
Online

21. April 2018