J'ai besoin de quelque éclairage.
Je crée un module que j'appel ClePresente avec ce code
Puis après sur mon formulaire de bienvenue je veux créer un bouton qui au clic cherchera la présence de la clé et qui ouvrira un autre formulaire et si la clé n'est pas présente il ferme l'application.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 Function ClePresente(sSN As String) As Boolean Dim strComputer As String, sReq As String, sClass As String Dim objWMIService As Object, colItems As Object, objItem As Object Dim sPnPid As String, bSNtrouve As Boolean On Error GoTo ErrH bSNtrouve = False strComputer = "." sClass = "Win32_DiskDrive" sReq = "Select * from " & sClass Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colItems = objWMIService.ExecQuery(sReq) If colItems.Count > 0 Then For Each objItem In colItems sPnPid = objItem.PNPDeviceID ' Teste si l'identificateur de disque contient le numéro ' de série recherché, après le 2e antislash If sPnPid Like "USB*\*\*" & sSN & "*" Then bSNtrouve = True Exit For End If Next End If ExitR: Set objItem = Nothing Set colItems = Nothing Set objWMIService = Nothing ' Valeur à retourner ClePresente = bSNtrouve Exit Function ErrH: MsgBox "Erreur No." & Err.Number & ": " & Err.Description, vbExclamation Resume ExitR End Function
Qu'est ce que je fais de la partie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Dim sNumeroSerie As String ' Numéro de série disque USB recherché sNumeroSerie = "AA000123465" If ClePresente(sNumeroSerie) Then DoCmd.OpenForm(NOMform) Else DoCmd.Quit End If
Partager