home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 1_2002.ISO / Data / Zips / WindowsCon4328712202001.psc / Mod_LectureEcriture.bas < prev    next >
Encoding:
BASIC Source File  |  2001-04-29  |  28.9 KB  |  801 lines

  1. Attribute VB_Name = "Mod_LectureEcriture"
  2.  
  3. '==================================================================================
  4. '======================== PROCEDURES LECTURE-ECRITURE =============================
  5. '==================================================================================
  6. Option Explicit
  7.  
  8. Const KEY_LOG = "Software\Microsoft\Windows NT\CurrentVersion\WinLogon"
  9. Const KEY_CVE = "Software\Microsoft\Windows NT\CurrentVersion"
  10. Const KEY_SYS = "Software\Microsoft\Windows\CurrentVersion\Policies\System"
  11. Const KEY_EXP = "Software\Microsoft\Windows\CurrentVersion\Policies\Explorer"
  12. Const KEY_NET = "Software\Microsoft\Windows\CurrentVersion\Policies\Network"
  13. Const KEY_DSK = "Control Panel\Desktop"
  14. Const KEY_WIM = "Control Panel\Desktop\WindowMetrics"
  15. Const KEY_KBU = "Control Panel\Keyboard"
  16. Const KEY_KBD = ".Default\Control Panel\Keyboard"
  17.  
  18. Public Const HKY_SERNUM = HKEY_LOCAL_MACHINE
  19. Public Const KEY_SERNUM = KEY_CVE
  20. Public Const VAL_SERNUM = "ProductId"
  21. Public Const VAL_REGOWN = "RegisteredOwner"
  22. Public Const VAL_REGORG = "RegisteredOrganization"
  23.  
  24. Public Const HKY_ALOGIN = HKEY_LOCAL_MACHINE
  25. Public Const KEY_ALOGIN = KEY_LOG
  26. Public Const VAL_ALENBD = "AutoAdminLogon"
  27. Public Const VAL_ALUSER = "DefaultUserName"
  28. Public Const VAL_ALDOMN = "DefaultDomainName"
  29. Public Const VAL_ALPSWD = "DefaultPassword"
  30.  
  31. Public Const HKY_MSGLOG = HKEY_LOCAL_MACHINE
  32. Public Const KEY_MSGLOG = KEY_LOG
  33. Public Const VAL_MSLCAP = "LegalNoticeCaption"
  34. Public Const VAL_MSLTXT = "LegalNoticeText"
  35.  
  36. Public Const HKY_POPLOG = HKEY_LOCAL_MACHINE
  37. Public Const KEY_POPLOG = KEY_LOG
  38. Public Const VAL_POPLOG = "LogonPrompt"
  39.  
  40. Public Const HKY_IKIUSR = HKEY_CURRENT_USER
  41. Public Const KEY_IKIUSR = KEY_KBU
  42. Public Const VAL_IKIUSR = "InitialKeyboardIndicators"
  43.  
  44. Public Const HKY_IKIDFT = HKEY_USERS
  45. Public Const KEY_IKIDFT = KEY_KBD
  46. Public Const VAL_IKIDFT = "InitialKeyboardIndicators"
  47.  
  48. Public Const HKY_ISDLOG = HKEY_LOCAL_MACHINE
  49. Public Const KEY_ISDLOG = KEY_LOG
  50. Public Const VAL_ISDLOG = "ShutdownWithoutLogon"
  51.  
  52. Public Const HKY_CPLAFF = HKEY_CURRENT_USER
  53. Public Const KEY_CPLAFF = KEY_SYS
  54. Public Const VAL_CPAGEN = "NoDispCPL"
  55. Public Const VAL_CPAAPP = "NoDispAppearancePage"
  56. Public Const VAL_CPABKG = "NoDispBackGroundPage"
  57. Public Const VAL_CPASCR = "NoDispScrSavPage"
  58. Public Const VAL_CPASET = "NoDispSettingsPage"
  59.  
  60. Public Const HKY_INHDSK = HKEY_CURRENT_USER
  61. Public Const KEY_INHDSK = KEY_EXP
  62. Public Const VAL_INHDSK = "NoDeskTop"
  63.  
  64. Public Const HKY_ICONET = HKEY_CURRENT_USER
  65. Public Const KEY_ICONET = KEY_EXP
  66. Public Const VAL_ICONET = "NoNetHood"
  67.  
  68. Public Const HKY_ENTNET = HKEY_CURRENT_USER
  69. Public Const KEY_ENTNET = KEY_NET
  70. Public Const VAL_ENTNET = "NoEntireNetwork"
  71.  
  72. Public Const HKY_NETWKC = HKEY_CURRENT_USER
  73. Public Const KEY_NETWKC = KEY_NET
  74. Public Const VAL_NETWKC = "NoWorkgroupContents"
  75.  
  76. Public Const HKY_ICOWEB = HKEY_CURRENT_USER
  77. Public Const KEY_ICOWEB = KEY_EXP
  78. Public Const VAL_ICOWEB = "NoInternetIcon"
  79.  
  80. Public Const HKY_CLKDRT = HKEY_CURRENT_USER
  81. Public Const KEY_CLKDRT = KEY_EXP
  82. Public Const VAL_CLKDRT = "NoViewContextMenu"
  83.  
  84. Public Const HKY_IMPAJT = HKEY_CURRENT_USER
  85. Public Const KEY_IMPAJT = KEY_EXP
  86. Public Const VAL_IMPAJT = "NoAddPrinter"
  87.  
  88. Public Const HKY_IMPSUP = HKEY_CURRENT_USER
  89. Public Const KEY_IMPSUP = KEY_EXP
  90. Public Const VAL_IMPSUP = "NoDeletePrinter"
  91.  
  92. Public Const HKY_STPWIN = HKEY_CURRENT_USER
  93. Public Const KEY_STPWIN = KEY_EXP
  94. Public Const VAL_STPWIN = "NoClose"
  95.  
  96. Public Const HKY_LOGOFF = HKEY_CURRENT_USER
  97. Public Const KEY_LOGOFF = KEY_EXP
  98. Public Const VAL_LOGOFF = "NoLogOff"
  99.  
  100. Public Const HKY_PRGCMN = HKEY_CURRENT_USER
  101. Public Const KEY_PRGCMN = KEY_EXP
  102. Public Const VAL_PRGCMN = "NoCommonGroups"
  103.  
  104. Public Const HKY_CMDRUN = HKEY_CURRENT_USER
  105. Public Const KEY_CMDRUN = KEY_EXP
  106. Public Const VAL_CMDRUN = "NoRun"
  107.  
  108. Public Const HKY_CMDFND = HKEY_CURRENT_USER
  109. Public Const KEY_CMDFND = KEY_EXP
  110. Public Const VAL_CMDFND = "NoFind"
  111.  
  112. Public Const HKY_CNFGEN = HKEY_CURRENT_USER
  113. Public Const KEY_CNFGEN = KEY_EXP
  114. Public Const VAL_CNFGEN = "NoSetFolders"
  115.  
  116. Public Const HKY_CNFTKB = HKEY_CURRENT_USER
  117. Public Const KEY_CNFTKB = KEY_EXP
  118. Public Const VAL_CNFTKB = "NoSetTaskbar"
  119.  
  120. Public Const HKY_LOCKST = HKEY_CURRENT_USER
  121. Public Const KEY_LOCKST = KEY_SYS
  122. Public Const VAL_LOCKST = "DisableLockWorkstation"
  123.  
  124. Public Const HKY_TSKMGR = HKEY_CURRENT_USER
  125. Public Const KEY_TSKMGR = KEY_SYS
  126. Public Const VAL_TSKMGR = "DisableTaskMgr"
  127.  
  128. Public Const HKY_CHGPWD = HKEY_CURRENT_USER
  129. Public Const KEY_CHGPWD = KEY_SYS
  130. Public Const VAL_CHGPWD = "DisableChangePassword"
  131.  
  132. Public Const HKY_HIDDRV = HKEY_CURRENT_USER
  133. Public Const KEY_HIDDRV = KEY_EXP
  134. Public Const VAL_HIDDRV = "NoDrives"
  135.  
  136. Public Const HKY_SIZICD = HKEY_CURRENT_USER
  137. Public Const KEY_SIZICD = KEY_WIM
  138. Public Const VAL_SIZICD = "Shell Icon Size"
  139.  
  140. Public Const HKY_SIZICS = HKEY_CURRENT_USER
  141. Public Const KEY_SIZICS = KEY_WIM
  142. Public Const VAL_SIZICS = "Shell Small Icon Size"
  143.  
  144. Public Const HKY_TMRMNU = HKEY_CURRENT_USER
  145. Public Const KEY_TMRMNU = KEY_DSK
  146. Public Const VAL_TMRMNU = "MenuShowDelay"
  147.  
  148. ' Constantes internes : Valeurs arbitraires
  149. Public Const REGSTS_INOKEY = -9999
  150. Public Const REGSTS_INOVALUE = -9998
  151. Public Const REGSTS_IINVVAL = -9997
  152. Public Const REGSTS_SZNOKEY = "<Cle non trouvΘe!!>"
  153. Public Const REGSTS_SZNOVALUE = "<Valeur non trouvΘe!!>"
  154.  
  155. ' ======== NUMERO DE SERIE ========
  156. Public Property Get WindowsSerialNumber() As String
  157.    Dim Ret As String
  158.    Ret = LectureRegistre(HKY_SERNUM, KEY_SERNUM, VAL_SERNUM, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  159.    If (InStr(Ret, "OEM") > 0) Then
  160.      WindowsSerialNumber = Format(Ret, "@@@@@-@@@-@@@@@@@-@@@@@")
  161.      Else
  162.           WindowsSerialNumber = Ret
  163.    End If
  164. End Property
  165.  
  166. ' ======== PROPRIETAIRE WINDOWS - UTILISATEUR ========
  167. Public Property Get RegisteredOwner() As String
  168.    RegisteredOwner = LectureRegistre(HKY_SERNUM, KEY_SERNUM, VAL_REGOWN, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  169. End Property
  170.  
  171. ' ======== PROPRIETAIRE WINDOWS - SOCIETE ========
  172. Public Property Get RegisteredOrganization() As String
  173.    RegisteredOrganization = LectureRegistre(HKY_SERNUM, KEY_SERNUM, VAL_REGORG, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  174. End Property
  175.  
  176. ' ======== AUTO LOGIN ========
  177. Public Property Get RegALActif() As Integer
  178.    Dim Ret As String
  179.    Ret = LectureRegistre(HKY_ALOGIN, KEY_ALOGIN, VAL_ALENBD, "0", REGSTS_SZNOKEY)
  180.    Select Case Ret
  181.       Case "0": RegALActif = 0
  182.       Case "1": RegALActif = 1
  183.       Case REGSTS_SZNOVALUE: RegALActif = REGSTS_INOVALUE
  184.       Case REGSTS_SZNOKEY: RegALActif = REGSTS_INOKEY
  185.       Case Else: RegALActif = REGSTS_IINVVAL
  186.    End Select
  187. End Property
  188. Public Property Let RegALActif(Etat As Integer)
  189.    If (Etat = 1) Then
  190.      Call EcritureRegistre(HKY_ALOGIN, KEY_ALOGIN, VAL_ALENBD, REG_SZ, "1")
  191.     Else
  192.        Call EffaceRegistre(HKY_ALOGIN, KEY_ALOGIN, VAL_ALENBD)
  193.    End If
  194. End Property
  195.  
  196. Public Property Get RegALUserName() As String
  197.    RegALUserName = LectureRegistre(HKY_ALOGIN, KEY_ALOGIN, VAL_ALUSER, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  198. End Property
  199. Public Property Let RegALUserName(Txt As String)
  200.      Call EcritureRegistre(HKY_ALOGIN, KEY_ALOGIN, VAL_ALUSER, REG_SZ, Txt)
  201. End Property
  202.  
  203. Public Property Get RegALDomain() As String
  204.    RegALDomain = LectureRegistre(HKY_ALOGIN, KEY_ALOGIN, VAL_ALDOMN, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  205. End Property
  206. Public Property Let RegALDomain(Txt As String)
  207.    If (Txt <> "") Then
  208.      Call EcritureRegistre(HKY_ALOGIN, KEY_ALOGIN, VAL_ALDOMN, REG_SZ, Txt)
  209.    End If
  210. End Property
  211.  
  212. Public Property Get RegALPassword() As String
  213.    RegALPassword = LectureRegistre(HKY_ALOGIN, KEY_ALOGIN, VAL_ALPSWD, "", REGSTS_SZNOKEY)
  214. End Property
  215. Public Property Let RegALPassword(Txt As String)
  216.    If (Txt <> FLG_SZ_AEFFACER) Then
  217.      Call EcritureRegistre(HKY_ALOGIN, KEY_ALOGIN, VAL_ALPSWD, REG_SZ, Txt)
  218.      Else
  219.        Call EffaceRegistre(HKY_ALOGIN, KEY_ALOGIN, VAL_ALPSWD)
  220.    End If
  221. End Property
  222.  
  223. ' ======== POPUP START UP ========
  224. Public Property Get RegPopStartUpTitre() As String
  225.    RegPopStartUpTitre = LectureRegistre(HKY_MSGLOG, KEY_MSGLOG, VAL_MSLCAP, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  226. End Property
  227. Public Property Let RegPopStartUpTitre(Txt As String)
  228.      Call EcritureRegistre(HKY_MSGLOG, KEY_MSGLOG, VAL_MSLCAP, REG_SZ, Txt)
  229. End Property
  230.  
  231. Public Property Get RegPopStartUpText() As String
  232.    RegPopStartUpText = LectureRegistre(HKY_MSGLOG, KEY_MSGLOG, VAL_MSLTXT, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  233. End Property
  234. Public Property Let RegPopStartUpText(Txt As String)
  235.    Call EcritureRegistre(HKY_MSGLOG, KEY_MSGLOG, VAL_MSLTXT, REG_SZ, Txt)
  236. End Property
  237.  
  238. ' ======== POPUP LOGON ========
  239. Public Property Get RegLogonPrompt() As String
  240.    RegLogonPrompt = LectureRegistre(HKY_POPLOG, KEY_POPLOG, VAL_POPLOG, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  241. End Property
  242. Public Property Let RegLogonPrompt(Txt As String)
  243.    Call EcritureRegistre(HKY_POPLOG, KEY_POPLOG, VAL_POPLOG, REG_SZ, Txt)
  244. End Property
  245.  
  246.  
  247. ' ======== INITIAL KEYBOARD INDICATORS ========
  248. Public Property Get RegInitialKeyboardIndicatorsDefault() As Integer
  249.    Dim Ret As String
  250.    Ret = LectureRegistre(HKY_IKIDFT, KEY_IKIDFT, VAL_IKIDFT, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  251.    Select Case Ret
  252.       Case 0 To 7: RegInitialKeyboardIndicatorsDefault = Val(Ret)
  253.       Case REGSTS_SZNOVALUE: RegInitialKeyboardIndicatorsDefault = REGSTS_INOVALUE
  254.       Case REGSTS_SZNOKEY: RegInitialKeyboardIndicatorsDefault = REGSTS_INOKEY
  255.       Case Else: RegInitialKeyboardIndicatorsDefault = REGSTS_IINVVAL
  256.    End Select
  257. End Property
  258. Public Property Let RegInitialKeyboardIndicatorsDefault(V As Integer)
  259.    Call EcritureRegistre(HKY_IKIDFT, KEY_IKIDFT, VAL_IKIDFT, REG_SZ, V)
  260. End Property
  261.  
  262. Public Property Get RegInitialKeyboardIndicatorsCurrentUser() As Integer
  263.    Dim Ret As String
  264.    Ret = LectureRegistre(HKY_IKIUSR, KEY_IKIUSR, VAL_IKIUSR, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  265.    Select Case Ret
  266.       Case 0 To 7: RegInitialKeyboardIndicatorsCurrentUser = Val(Ret)
  267.       Case REGSTS_SZNOVALUE: RegInitialKeyboardIndicatorsCurrentUser = REGSTS_INOVALUE
  268.       Case REGSTS_SZNOKEY: RegInitialKeyboardIndicatorsCurrentUser = REGSTS_INOKEY
  269.       Case Else: RegInitialKeyboardIndicatorsCurrentUser = REGSTS_IINVVAL
  270.    End Select
  271. End Property
  272. Public Property Let RegInitialKeyboardIndicatorsCurrentUser(V As Integer)
  273.    Call EcritureRegistre(HKY_IKIUSR, KEY_IKIUSR, VAL_IKIUSR, REG_SZ, V)
  274. End Property
  275.  
  276. ' ======== INH SHUTDOWN DANS LOGIN ========
  277. Public Property Get RegInhShutdownDansLogin() As Integer
  278.    Dim Ret As String
  279.    Ret = LectureRegistre(HKY_ISDLOG, KEY_ISDLOG, VAL_ISDLOG, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  280.    Select Case Ret
  281.       Case 0: RegInhShutdownDansLogin = 1
  282.       Case 1: RegInhShutdownDansLogin = 0
  283.       Case REGSTS_SZNOVALUE: RegInhShutdownDansLogin = REGSTS_INOVALUE
  284.       Case REGSTS_SZNOKEY: RegInhShutdownDansLogin = REGSTS_INOKEY
  285.       Case Else: RegInhShutdownDansLogin = REGSTS_IINVVAL
  286.    End Select
  287. End Property
  288. Public Property Let RegInhShutdownDansLogin(Val As Integer)
  289.    Call EcritureRegistre(HKY_MSGLOG, KEY_MSGLOG, VAL_MSLTXT, REG_SZ, 1 - Val)
  290. End Property
  291.  
  292. ' ======== CPL AFFICHAGE ========
  293. Public Property Get RegInhCPLAffAccesCPL() As Integer
  294.    Dim Ret As Long
  295.    Ret = LectureRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPAGEN, 0, 0)
  296.    Select Case Ret
  297.       Case 0, 1: RegInhCPLAffAccesCPL = Ret
  298.       Case Else: RegInhCPLAffAccesCPL = REGSTS_IINVVAL
  299.    End Select
  300. End Property
  301. Public Property Let RegInhCPLAffAccesCPL(V As Integer)
  302.    If V = 1 Then
  303.      Call EcritureRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPAGEN, REG_DWORD, 1)
  304.     Else
  305.        Call EffaceRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPAGEN)
  306.    End If
  307. End Property
  308.  
  309. Public Property Get RegInhCPLAffOgtApp() As Integer
  310.    Dim Ret As Long
  311.    Ret = LectureRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPAAPP, 0, 0)
  312.    Select Case Ret
  313.       Case 0, 1: RegInhCPLAffOgtApp = Ret
  314.       Case Else: RegInhCPLAffOgtApp = REGSTS_IINVVAL
  315.    End Select
  316. End Property
  317. Public Property Let RegInhCPLAffOgtApp(Val As Integer)
  318.    If Val = 1 Then
  319.      Call EcritureRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPAAPP, REG_DWORD, 1)
  320.     Else
  321.        Call EffaceRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPAAPP)
  322.    End If
  323. End Property
  324.  
  325. Public Property Get RegInhCPLAffOgtAP() As Integer
  326.    Dim Ret As Long
  327.    Ret = LectureRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPABKG, 0, 0)
  328.    Select Case Ret
  329.       Case 0, 1: RegInhCPLAffOgtAP = Ret
  330.       Case Else: RegInhCPLAffOgtAP = REGSTS_IINVVAL
  331.    End Select
  332. End Property
  333. Public Property Let RegInhCPLAffOgtAP(Val As Integer)
  334.    If Val = 1 Then
  335.      Call EcritureRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPABKG, REG_DWORD, 1)
  336.     Else
  337.        Call EffaceRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPABKG)
  338.    End If
  339. End Property
  340.  
  341. Public Property Get RegInhCPLAffOgtEco() As Integer
  342.    Dim Ret As Long
  343.    Ret = LectureRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPASCR, 0, 0)
  344.    Select Case Ret
  345.       Case 0, 1: RegInhCPLAffOgtEco = Ret
  346.       Case Else: RegInhCPLAffOgtEco = REGSTS_IINVVAL
  347.    End Select
  348. End Property
  349. Public Property Let RegInhCPLAffOgtEco(Val As Integer)
  350.    If Val = 1 Then
  351.      Call EcritureRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPASCR, REG_DWORD, 1)
  352.     Else
  353.        Call EffaceRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPASCR)
  354.    End If
  355. End Property
  356.  
  357. Public Property Get RegInhCPLAffOgtCnf() As Integer
  358.    Dim Ret As Long
  359.    Ret = LectureRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPASET, 0, 0)
  360.    Select Case Ret
  361.       Case 0, 1: RegInhCPLAffOgtCnf = Ret
  362.       Case Else: RegInhCPLAffOgtCnf = REGSTS_IINVVAL
  363.    End Select
  364. End Property
  365. Public Property Let RegInhCPLAffOgtCnf(Val As Integer)
  366.    If Val = 1 Then
  367.      Call EcritureRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPASET, REG_DWORD, 1)
  368.     Else
  369.        Call EffaceRegistre(HKY_CPLAFF, KEY_CPLAFF, VAL_CPASET)
  370.    End If
  371. End Property
  372.  
  373. ' ======== INH ICONE VOISINAGE RESEAU ========
  374. Public Property Get RegInhIconeReseau() As Integer
  375.    Dim Ret As Long
  376.    Ret = LectureRegistre(HKY_ICONET, KEY_ICONET, VAL_ICONET, 0, REGSTS_INOKEY)
  377.    Select Case Ret
  378.       Case 0, 1, REGSTS_INOKEY: RegInhIconeReseau = Ret
  379.       Case Else:                RegInhIconeReseau = REGSTS_IINVVAL
  380.    End Select
  381. End Property
  382. Public Property Let RegInhIconeReseau(Val As Integer)
  383.    If Val = 1 Then
  384.      Call EcritureRegistre(HKY_ICONET, KEY_ICONET, VAL_ICONET, REG_DWORD, 1)
  385.     Else
  386.        Call EffaceRegistre(HKY_ICONET, KEY_ICONET, VAL_ICONET)
  387.    End If
  388. End Property
  389.  
  390. ' ======== INH RESEAU GLOBAL ========
  391. Public Property Get RegInhReseauGlobal() As Integer
  392.    Dim Ret As Long
  393.    Ret = LectureRegistre(HKY_ENTNET, KEY_ENTNET, VAL_ENTNET, 0, 0)
  394.    Select Case Ret
  395.       Case 0, 1, REGSTS_INOKEY: RegInhReseauGlobal = Ret
  396.       Case Else:                RegInhReseauGlobal = REGSTS_IINVVAL
  397.    End Select
  398. End Property
  399. Public Property Let RegInhReseauGlobal(Val As Integer)
  400.    If Val = 1 Then
  401.      Call EcritureRegistre(HKY_ENTNET, KEY_ENTNET, VAL_ENTNET, REG_DWORD, 1)
  402.     Else
  403.        Call EffaceRegistre(HKY_ENTNET, KEY_ENTNET, VAL_ENTNET)
  404.    End If
  405. End Property
  406.  
  407. ' ======== INH CONTENU GROUPE TRAVAIL ========
  408. Public Property Get RegInhContenuGroupesTravail() As Integer
  409.    Dim Ret As Long
  410.    Ret = LectureRegistre(HKY_NETWKC, KEY_NETWKC, VAL_NETWKC, 0, 0)
  411.    Select Case Ret
  412.       Case 0, 1, REGSTS_INOKEY: RegInhContenuGroupesTravail = Ret
  413.       Case Else:                RegInhContenuGroupesTravail = REGSTS_IINVVAL
  414.    End Select
  415. End Property
  416. Public Property Let RegInhContenuGroupesTravail(Val As Integer)
  417.    If Val = 1 Then
  418.      Call EcritureRegistre(HKY_NETWKC, KEY_NETWKC, VAL_NETWKC, REG_DWORD, 1)
  419.     Else
  420.        Call EffaceRegistre(HKY_NETWKC, KEY_NETWKC, VAL_NETWKC)
  421.    End If
  422. End Property
  423.  
  424. ' ======== INH ICONE INTERNET EXPLORER ========
  425. Public Property Get RegInhIconeIE() As Integer
  426.    Dim Ret As Long
  427.    Ret = LectureRegistre(HKY_ICOWEB, KEY_ICOWEB, VAL_ICOWEB, 0, REGSTS_INOKEY)
  428.    Select Case Ret
  429.       Case 0, 1, REGSTS_INOKEY: RegInhIconeIE = Ret
  430.       Case Else:                RegInhIconeIE = REGSTS_IINVVAL
  431.    End Select
  432. End Property
  433. Public Property Let RegInhIconeIE(Val As Integer)
  434.    If Val = 1 Then
  435.      Call EcritureRegistre(HKY_ICOWEB, KEY_ICOWEB, VAL_ICOWEB, REG_DWORD, 1)
  436.     Else
  437.        Call EffaceRegistre(HKY_ICOWEB, KEY_ICOWEB, VAL_ICOWEB)
  438.    End If
  439. End Property
  440.  
  441. ' ======== INH CLIC DROIT SOURIS ========
  442. Public Property Get RegInhClicDroit() As Integer
  443.    Dim Ret As Long
  444.    Ret = LectureRegistre(HKY_CLKDRT, KEY_CLKDRT, VAL_CLKDRT, 0, REGSTS_INOKEY)
  445.    Select Case Ret
  446.       Case 0, 1, REGSTS_INOKEY: RegInhClicDroit = Ret
  447.       Case Else:                RegInhClicDroit = REGSTS_IINVVAL
  448.    End Select
  449. End Property
  450. Public Property Let RegInhClicDroit(Val As Integer)
  451.    If Val = 1 Then
  452.      Call EcritureRegistre(HKY_CLKDRT, KEY_CLKDRT, VAL_CLKDRT, REG_DWORD, 1)
  453.     Else
  454.        Call EffaceRegistre(HKY_CLKDRT, KEY_CLKDRT, VAL_CLKDRT)
  455.    End If
  456. End Property
  457.  
  458. ' ======== INH IMPRIMANTE AJOUT ========
  459. Public Property Get RegInhImpAjout() As Integer
  460.    Dim Ret As Long
  461.    Ret = LectureRegistre(HKY_IMPAJT, KEY_IMPAJT, VAL_IMPAJT, 0, REGSTS_INOKEY)
  462.    Select Case Ret
  463.       Case 0, 1, REGSTS_INOKEY: RegInhImpAjout = Ret
  464.       Case Else:                RegInhImpAjout = REGSTS_IINVVAL
  465.    End Select
  466. End Property
  467. Public Property Let RegInhImpAjout(Val As Integer)
  468.    If Val = 1 Then
  469.      Call EcritureRegistre(HKY_IMPAJT, KEY_IMPAJT, VAL_IMPAJT, REG_DWORD, 1)
  470.     Else
  471.        Call EffaceRegistre(HKY_IMPAJT, KEY_IMPAJT, VAL_IMPAJT)
  472.    End If
  473. End Property
  474.  
  475. ' ======== INH IMPRIMANTE SUPP ========
  476. Public Property Get RegInhImpSupp() As Integer
  477.    Dim Ret As Long
  478.    Ret = LectureRegistre(HKY_IMPSUP, KEY_IMPSUP, VAL_IMPSUP, 0, REGSTS_INOKEY)
  479.    Select Case Ret
  480.       Case 0, 1, REGSTS_INOKEY: RegInhImpSupp = Ret
  481.       Case Else:                RegInhImpSupp = REGSTS_IINVVAL
  482.    End Select
  483. End Property
  484. Public Property Let RegInhImpSupp(Val As Integer)
  485.    If Val = 1 Then
  486.      Call EcritureRegistre(HKY_IMPSUP, KEY_IMPSUP, VAL_IMPSUP, REG_DWORD, 1)
  487.     Else
  488.        Call EffaceRegistre(HKY_IMPSUP, KEY_IMPSUP, VAL_IMPSUP)
  489.    End If
  490. End Property
  491.  
  492. ' ======== INH BUREAU ========
  493. Public Property Get RegInhDesktop() As Integer
  494.    Dim Ret As Long
  495.    Ret = LectureRegistre(HKY_INHDSK, KEY_INHDSK, VAL_INHDSK, 0, REGSTS_INOKEY)
  496.    Select Case Ret
  497.       Case 0, 1, REGSTS_INOKEY: RegInhDesktop = Ret
  498.       Case Else:                RegInhDesktop = REGSTS_IINVVAL
  499.    End Select
  500. End Property
  501. Public Property Let RegInhDesktop(Val As Integer)
  502.    If Val = 1 Then
  503.      Call EcritureRegistre(HKY_INHDSK, KEY_INHDSK, VAL_INHDSK, REG_DWORD, 1)
  504.     Else
  505.        Call EffaceRegistre(HKY_INHDSK, KEY_INHDSK, VAL_INHDSK)
  506.    End If
  507. End Property
  508.  
  509. ' ======== INH ARRET WINDOWS ========
  510. Public Property Get RegInhArretWindows() As Integer
  511.    Dim Ret As Long
  512.    Ret = LectureRegistre(HKY_STPWIN, KEY_STPWIN, VAL_STPWIN, 0, REGSTS_INOKEY)
  513.    Select Case Ret
  514.       Case 0, 1, REGSTS_INOKEY: RegInhArretWindows = Ret
  515.       Case Else:                RegInhArretWindows = REGSTS_IINVVAL
  516.    End Select
  517. End Property
  518. Public Property Let RegInhArretWindows(Val As Integer)
  519.    If Val = 1 Then
  520.      Call EcritureRegistre(HKY_STPWIN, KEY_STPWIN, VAL_STPWIN, REG_DWORD, 1)
  521.     Else
  522.        Call EffaceRegistre(HKY_STPWIN, KEY_STPWIN, VAL_STPWIN)
  523.    End If
  524. End Property
  525.  
  526. ' ======== INH LOG OFF ========
  527. Public Property Get RegInhLogOff() As Integer
  528.    Dim Ret As Long
  529.    Ret = LectureRegistre(HKY_LOGOFF, KEY_LOGOFF, VAL_LOGOFF, 0, REGSTS_INOKEY)
  530.    Select Case Ret
  531.       Case 0, 1, REGSTS_INOKEY: RegInhLogOff = Ret
  532.       Case Else:                RegInhLogOff = REGSTS_IINVVAL
  533.    End Select
  534. End Property
  535. Public Property Let RegInhLogOff(Val As Integer)
  536.    If Val = 1 Then
  537.      Call EcritureRegistre(HKY_LOGOFF, KEY_LOGOFF, VAL_LOGOFF, REG_DWORD, 1)
  538.     Else
  539.        Call EffaceRegistre(HKY_LOGOFF, KEY_LOGOFF, VAL_LOGOFF)
  540.    End If
  541. End Property
  542.  
  543. ' ======== INH PROGRAMMES COMMUNS ========
  544. Public Property Get RegInhPrgsCommuns() As Integer
  545.    Dim Ret As Long
  546.    Ret = LectureRegistre(HKY_PRGCMN, KEY_PRGCMN, VAL_PRGCMN, 0, REGSTS_INOKEY)
  547.    Select Case Ret
  548.       Case 0, 1, REGSTS_INOKEY: RegInhPrgsCommuns = Ret
  549.       Case Else:                RegInhPrgsCommuns = REGSTS_IINVVAL
  550.    End Select
  551. End Property
  552. Public Property Let RegInhPrgsCommuns(Val As Integer)
  553.    If Val = 1 Then
  554.      Call EcritureRegistre(HKY_PRGCMN, KEY_PRGCMN, VAL_PRGCMN, REG_DWORD, 1)
  555.     Else
  556.        Call EffaceRegistre(HKY_PRGCMN, KEY_PRGCMN, VAL_PRGCMN)
  557.    End If
  558. End Property
  559.  
  560. ' ======== INH COMMANDE RUN ========
  561. Public Property Get RegInhCmdRun() As Integer
  562.    Dim Ret As Long
  563.    Ret = LectureRegistre(HKY_CMDRUN, KEY_CMDRUN, VAL_CMDRUN, 0, REGSTS_INOKEY)
  564.    Select Case Ret
  565.       Case 0, 1, REGSTS_INOKEY: RegInhCmdRun = Ret
  566.       Case Else:                RegInhCmdRun = REGSTS_IINVVAL
  567.    End Select
  568. End Property
  569. Public Property Let RegInhCmdRun(Val As Integer)
  570.    If Val = 1 Then
  571.      Call EcritureRegistre(HKY_CMDRUN, KEY_CMDRUN, VAL_CMDRUN, REG_DWORD, 1)
  572.     Else
  573.        Call EffaceRegistre(HKY_CMDRUN, KEY_CMDRUN, VAL_CMDRUN)
  574.    End If
  575. End Property
  576.  
  577. ' ======== INH COMMANDE FIND ========
  578. Public Property Get RegInhCmdFind() As Integer
  579.    Dim Ret As Long
  580.    Ret = LectureRegistre(HKY_CMDFND, KEY_CMDFND, VAL_CMDFND, 0, REGSTS_INOKEY)
  581.    Select Case Ret
  582.       Case 0, 1, REGSTS_INOKEY: RegInhCmdFind = Ret
  583.       Case Else:                RegInhCmdFind = REGSTS_IINVVAL
  584.    End Select
  585. End Property
  586. Public Property Let RegInhCmdFind(Val As Integer)
  587.    If Val = 1 Then
  588.      Call EcritureRegistre(HKY_CMDFND, KEY_CMDFND, VAL_CMDFND, REG_DWORD, 1)
  589.     Else
  590.        Call EffaceRegistre(HKY_CMDFND, KEY_CMDFND, VAL_CMDFND)
  591.    End If
  592. End Property
  593. ' ======== INH CONFIG GENERALE ========
  594. Public Property Get RegInhCnfGen() As Integer
  595.    Dim Ret As Long
  596.    Ret = LectureRegistre(HKY_CNFGEN, KEY_CNFGEN, VAL_CNFGEN, 0, REGSTS_INOKEY)
  597.    Select Case Ret
  598.       Case 0, 1, REGSTS_INOKEY: RegInhCnfGen = Ret
  599.       Case Else:                RegInhCnfGen = REGSTS_IINVVAL
  600.    End Select
  601. End Property
  602. Public Property Let RegInhCnfGen(Val As Integer)
  603.    If Val = 1 Then
  604.      Call EcritureRegistre(HKY_CNFGEN, KEY_CNFGEN, VAL_CNFGEN, REG_DWORD, 1)
  605.     Else
  606.        Call EffaceRegistre(HKY_CNFGEN, KEY_CNFGEN, VAL_CNFGEN)
  607.    End If
  608. End Property
  609.  
  610. ' ======== INH CONFIG TASK BAR ========
  611. Public Property Get RegInhCnfTaskBar() As Integer
  612.    Dim Ret As Long
  613.    Ret = LectureRegistre(HKY_CNFTKB, KEY_CNFTKB, VAL_CNFTKB, 0, REGSTS_INOKEY)
  614.    Select Case Ret
  615.       Case 0, 1, REGSTS_INOKEY: RegInhCnfTaskBar = Ret
  616.       Case Else:                RegInhCnfTaskBar = REGSTS_IINVVAL
  617.    End Select
  618. End Property
  619. Public Property Let RegInhCnfTaskBar(Val As Integer)
  620.    If Val = 1 Then
  621.      Call EcritureRegistre(HKY_CNFTKB, KEY_CNFTKB, VAL_CNFTKB, REG_DWORD, 1)
  622.     Else
  623.        Call EffaceRegistre(HKY_CNFTKB, KEY_CNFTKB, VAL_CNFTKB)
  624.    End If
  625. End Property
  626.  
  627. ' ======== INH VEROUILLER STATION ========
  628. Public Property Get RegInhLockStation() As Integer
  629.    Dim Ret As Long
  630.    Ret = LectureRegistre(HKY_LOCKST, KEY_LOCKST, VAL_LOCKST, 0, 0)
  631.    Select Case Ret
  632.       Case 0, 1: RegInhLockStation = Ret
  633.       Case Else: RegInhLockStation = REGSTS_IINVVAL
  634.    End Select
  635. End Property
  636. Public Property Let RegInhLockStation(Val As Integer)
  637.    If Val = 1 Then
  638.      Call EcritureRegistre(HKY_LOCKST, KEY_LOCKST, VAL_LOCKST, REG_DWORD, 1)
  639.     Else
  640.        Call EffaceRegistre(HKY_LOCKST, KEY_LOCKST, VAL_LOCKST)
  641.    End If
  642. End Property
  643.  
  644. ' ======== INH TASK MANAGER ========
  645. Public Property Get RegInhTaskManager() As Integer
  646.    Dim Ret As Long
  647.    Ret = LectureRegistre(HKY_TSKMGR, KEY_TSKMGR, VAL_TSKMGR, 0, 0)
  648.    Select Case Ret
  649.       Case 0, 1: RegInhTaskManager = Ret
  650.       Case Else: RegInhTaskManager = REGSTS_IINVVAL
  651.    End Select
  652. End Property
  653. Public Property Let RegInhTaskManager(Val As Integer)
  654.    If Val = 1 Then
  655.      Call EcritureRegistre(HKY_TSKMGR, KEY_TSKMGR, VAL_TSKMGR, REG_DWORD, 1)
  656.     Else
  657.        Call EffaceRegistre(HKY_TSKMGR, KEY_TSKMGR, VAL_TSKMGR)
  658.    End If
  659. End Property
  660.  
  661. ' ======== INH CHANGE PASSWORD ========
  662. Public Property Get RegInhChangePassword() As Integer
  663.    Dim Ret As Long
  664.    Ret = LectureRegistre(HKY_CHGPWD, KEY_CHGPWD, VAL_CHGPWD, 0, 0)
  665.    Select Case Ret
  666.       Case 0, 1: RegInhChangePassword = Ret
  667.       Case Else: RegInhChangePassword = REGSTS_IINVVAL
  668.    End Select
  669. End Property
  670. Public Property Let RegInhChangePassword(Val As Integer)
  671.    If Val = 1 Then
  672.      Call EcritureRegistre(HKY_CHGPWD, KEY_CHGPWD, VAL_CHGPWD, REG_DWORD, 1)
  673.     Else
  674.        Call EffaceRegistre(HKY_CHGPWD, KEY_CHGPWD, VAL_CHGPWD)
  675.    End If
  676. End Property
  677.  
  678. ' ======== CACHE LECTEURS ========
  679. Public Property Get RegCacheLecteurs() As String
  680.    Dim Ret As Long
  681.    Dim i   As Integer
  682.    Dim Config As String
  683.    Ret = LectureRegistre(HKY_HIDDRV, KEY_HIDDRV, VAL_HIDDRV, 0, REGSTS_INOKEY)
  684.    Select Case Ret
  685.       Case REGSTS_INOKEY: RegCacheLecteurs = REGSTS_SZNOKEY
  686.       Case Else
  687.           Config = ""
  688.           For i = 0 To 25
  689.              Config = Config & IIf(Ret And (2 ^ i), "1", "0")
  690.           Next
  691.           RegCacheLecteurs = Config
  692.    End Select
  693. End Property
  694. Public Property Let RegCacheLecteurs(Config As String)
  695.    Dim i As Integer
  696.    Dim V As Long
  697.    If (Val(Config) <> 0) Then
  698.      For i = 0 To 25
  699.         V = V + IIf(Mid$(Config, i + 1, 1) = "1", (2 ^ i), 0)
  700.      Next
  701.      Call EcritureRegistre(HKY_HIDDRV, KEY_HIDDRV, VAL_HIDDRV, REG_DWORD, V)
  702.     Else
  703.        Call EffaceRegistre(HKY_HIDDRV, KEY_HIDDRV, VAL_HIDDRV)
  704.    End If
  705. End Property
  706.  
  707.  
  708. ' ======== TAILLE ICONES BUREAU ========
  709. Public Property Get RegTailleIconesBureau() As Integer
  710.    Dim Ret As String
  711.    Ret = LectureRegistre(HKY_SIZICD, KEY_SIZICD, VAL_SIZICD, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  712.    Select Case Trim$(Ret)
  713.       Case REGSTS_SZNOVALUE: RegTailleIconesBureau = REGSTS_INOVALUE
  714.       Case REGSTS_SZNOKEY: RegTailleIconesBureau = REGSTS_INOKEY
  715.       Case Else:
  716.           If Val(Ret) > 0 And Val(Ret) < 200 Then
  717.             RegTailleIconesBureau = Val(Ret)
  718.            Else
  719.                   RegTailleIconesBureau = REGSTS_IINVVAL
  720.           End If
  721.    End Select
  722. End Property
  723. Public Property Let RegTailleIconesBureau(V As Integer)
  724.    Call EcritureRegistre(HKY_SIZICD, KEY_SIZICD, VAL_SIZICD, REG_SZ, V)
  725. End Property
  726.  
  727. Public Property Get RegTailleIconesMenuStart() As Integer
  728.    Dim Ret As String
  729.    Ret = LectureRegistre(HKY_SIZICS, KEY_SIZICS, VAL_SIZICS, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  730.    Select Case Trim$(Ret)
  731.       Case REGSTS_SZNOVALUE: RegTailleIconesMenuStart = REGSTS_INOVALUE
  732.       Case REGSTS_SZNOKEY: RegTailleIconesMenuStart = REGSTS_INOKEY
  733.       Case Else:
  734.           If Val(Ret) > 0 And Val(Ret) < 200 Then
  735.             RegTailleIconesMenuStart = Val(Ret)
  736.            Else
  737.                   RegTailleIconesMenuStart = REGSTS_IINVVAL
  738.           End If
  739.    End Select
  740. End Property
  741. Public Property Let RegTailleIconesMenuStart(V As Integer)
  742.    Call EcritureRegistre(HKY_SIZICS, KEY_SIZICS, VAL_SIZICS, REG_SZ, V)
  743. End Property
  744.  
  745. ' ======== DELAY ========
  746. Public Property Get RegDelaiMenus() As Integer
  747.    Dim Ret As String
  748.    Ret = LectureRegistre(HKY_TMRMNU, KEY_TMRMNU, VAL_TMRMNU, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  749.    Select Case Trim$(Ret)
  750.       Case REGSTS_SZNOVALUE: RegDelaiMenus = REGSTS_INOVALUE
  751.       Case REGSTS_SZNOKEY: RegDelaiMenus = REGSTS_INOKEY
  752.       Case Else:
  753.           If Val(Ret) > 0 And Val(Ret) < 20000 Then
  754.             RegDelaiMenus = Val(Ret)
  755.            Else
  756.                   RegDelaiMenus = REGSTS_IINVVAL
  757.           End If
  758.    End Select
  759. End Property
  760. Public Property Let RegDelaiMenus(V As Integer)
  761.    Call EcritureRegistre(HKY_TMRMNU, KEY_TMRMNU, VAL_TMRMNU, REG_SZ, V)
  762. End Property
  763.  
  764.  
  765. Public Property Get SerialNumber() As String
  766.    SerialNumber = LectureRegistre(HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows NT\CurrentVersion", _
  767.                         "ProductId", -99, -98)
  768. End Property
  769.  
  770.  
  771.  
  772. ' ======== INH TOUCHE WINDOWS ========
  773. 'Public Property Get RegToucheWin() As Integer
  774. '   RegToucheWin = LectureRegistre(HKY_TCHWIN, KEY_TCHWIN, VAL_TCHWIN, REGSTS_INOVALUE, REGSTS_INOKEY)
  775. 'End Property
  776.  
  777. ' ======== INH ALT TAB ========
  778. 'Public Property Get RegAltTab() As Integer
  779. '   RegAltTab = LectureRegistre(HKY_ALTTAB, KEY_ALTTAB, VAL_ALTTAB, REGSTS_INOVALUE, REGSTS_INOKEY)
  780. 'End Property
  781.  
  782. ' ======== INH TOUCHE SHIFT AU DEMARRAGE ========
  783. 'Public Property Get RegToucheShift() As String
  784. '   RegToucheShift = LectureRegistre(HKY_TSHIFT, KEY_TSHIFT, VAL_TSHIFT, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  785. 'End Property
  786.  
  787. ' ======== INH BOUTON DROIT ========
  788. 'Public Property Get RegBoutonDroit() As Integer
  789. '   RegBoutonDroit = LectureRegistre(HKY_BTNDRT, KEY_BTNDRT, VAL_BTNDRT, REGSTS_INOVALUE, REGSTS_INOKEY)
  790. 'End Property
  791.  
  792. ' ======== VEROUILLAGE PAVE NUMERIQUE AU DEMARRAGE ========
  793. 'Public Property Get RegPaveNum() As Integer
  794. '   RegPaveNum = LectureRegistre(HKY_PAVNUM, KEY_PAVNUM, VAL_PAVNUM, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  795. 'End Property
  796.  
  797. ' ======== LANCEMENT PROGRAMME PAR CTRL-ESC ========
  798. 'Public Property Get RegCtrlEsc() As String
  799. '   RegCtrlEsc = LectureRegistre(HKY_CTLESC, KEY_CTLESC, VAL_CTLESC, REGSTS_SZNOVALUE, REGSTS_SZNOKEY)
  800. 'End Property
  801.