UDF > SQLite >


_SQLite_Startup

Charge SQLite3.dll

#include <SQLite.au3>
_SQLite_Startup ( [$sDll_Filename = "" [, $bUTF8ErrorMsg = False [, $iForceLocal = 0 [, $hPrintCallback = $__g_hPrintCallback_SQLite]]]] )

Paramètres

$sDll_Filename [optionnel] Nom du fichier DLL. Par défaut "sqlite3.dll" ou "sqlite3_x64.dll" en mode X64.
$bUTF8ErrorMsg [optionnel] Pour forcer ConsoleWrite() à afficher les caractères UTF8
$iForceLocal [optionnel] 1 = utilise le fichier DLL défini. Aucune vérification de version. "_x64.dll" automatiquement en mode X64.
0 = la DLL sera téléchargée si non trouvée dans @ScriptDir, @SystemDir, @WindowsDir et @WorkingDir.
-1 = force le téléchargement
$hPrintCallback [optionnel] Une variable contenant une fonction définie par l'utilisateur pour afficher un message de diagnostic SQLite. Par défaut = __SQLite_ConsoleWrite(). Voir Remarques.

Valeur de retour

Succès: Retourne le chemin du fichier DLL ouvert.
Échec: Définit @error <> 0.

Remarques

Si #include <SQLite.dll.au3> est utilisé la version de SQLite est testée. Si elle est obsolète, elle est téléchargée.

Le fichier téléchargé sera créé dans @SystemDir (peut nécessiter #RequireAdmin).
Si la création n'est pas réussie, un fichier temporaire sera créé et il sera détruit lorsque _SQLite_Shutdown() sera appelée.

Si $bUTF8ErrorMsg n'est pas zéro, les chaînes formatées UTF8 s'affichent dans la console.
Cela permet aux applications, tel que SciTE, d'afficher ces caractères si elles sont configurées avec output.code.page = 65001.
C'est le cas lors de l'exécution SciTE sous une version qui n'est pas en anglais comme Vista(fr).

Le paramètre $hPrintCallback spécifie le nom de la fonction de rappel définie par l'utilisateur. Cette fonction sera passée avec un seul paramètre qui sera le message à afficher. La fonction de rappel par défaut est $__g_hPrintCallback_SQLite. Voir cette fonction pour un exemple de mise en œuvre de votre propre fonction de rappel.

En relation

_SQLite_Shutdown

Exemple

Exemple 1

; La version SQLite.dll doit être trouvée

#include <MsgBoxConstants.au3>
#include <SQLite.au3>
#include <SQLite.dll.au3>

Local $sSQliteDll = _SQLite_Startup()

If @error Then
    MsgBox($MB_SYSTEMMODAL, "SQLite Error", "SQLite3.dll ne peut pas être chargé!" & @CRLF & @CRLF & _
            "NON trouvé dans @SystemDir, @WindowsDir, @ScriptDir, @WorkingDir, ou sur le site www.autoitscript.com")
    Exit -1
EndIf

MsgBox($MB_SYSTEMMODAL, "SQLite3.dll chargé", $sSQliteDll & " (" & _SQLite_LibVersion() & ")")
ConsoleWrite("_SQLite_LibVersion=" & _SQLite_LibVersion() & @CRLF)
_SQLite_Shutdown()

Exemple 2

; Aucune version ne doit exister dans @SystemDir, @WindowsDir, @ScriptDir ou @WorkingDir

#include <MsgBoxConstants.au3>
#include <SQLite.au3>

Local $sSQliteDll
$sSQliteDll = _SQLite_Startup()
If @error Then
    MsgBox($MB_SYSTEMMODAL, "SQLite Error", "SQLite3.dll ne peut pas être chargé!" & @CRLF & @CRLF & _
            "NON trouvé dans @SystemDir, @WindowsDir, @ScriptDir or @WorkingDir")
    Exit -1
EndIf

MsgBox($MB_SYSTEMMODAL, "SQLite3.dll Loaded", $sSQliteDll & " (" & _SQLite_LibVersion() & ")")
ConsoleWrite("_SQLite_LibVersion=" & _SQLite_LibVersion() & @CRLF)
_SQLite_Shutdown()

Exemple 3

; Ouvre SQLite avec un fichier local précisé

#include <MsgBoxConstants.au3>
#include <SQLite.au3>

Local $sLocalSQLiteDll = "local SQLite.dll" ; Est changée en un .dll existant pour ne pas avoir d'erreur

Local $sSQliteDll = _SQLite_Startup($sLocalSQLiteDll, False, 1)
If @error Then
    MsgBox($MB_SYSTEMMODAL, "SQLite Error", "'SQLite3.dll' Ne peut pas être chargée!")
    Exit -1
EndIf

MsgBox($MB_SYSTEMMODAL, "SQLite3.dll Loaded", $sSQliteDll & " (" & _SQLite_LibVersion() & ")")
ConsoleWrite("_SQLite_LibVersion=" & _SQLite_LibVersion() & @CRLF)
_SQLite_Shutdown()

Exemple 4

; Force le téléchargement à partir de  www.autoitscript.com

; #RequireAdmin ; Nécessaire si le fichier se trouve dans @systemdir où il est recherché

#include <MsgBoxConstants.au3>
#include <SQLite.au3>
#include <SQLite.dll.au3>

Local $sSQliteDll = _SQLite_Startup("", False, -1)
If @error Then
    MsgBox($MB_SYSTEMMODAL, "SQLite Error", "'SQLite3.dll' ne peut pas être chargée!")
    Exit -1
EndIf

MsgBox($MB_SYSTEMMODAL, "SQLite3.dll Loaded", $sSQliteDll & " (" & _SQLite_LibVersion() & ")")
ConsoleWrite("_SQLite_LibVersion=" & _SQLite_LibVersion() & @CRLF)
_SQLite_Shutdown()