Помогите с Checkbox

Тема в разделе "Другие", создана пользователем craf, 20 авг 2005.

Статус темы:
Закрыта.
  1. craf

    craf Гость

    Всем доброго времени суток! у меня проблемка вот такая: мне нужно чтобы при нажатии на галочку (B CheckBox) Менялся ключ реестра на 1 и обратно, подскажите пожалуйста что для этого вписать в CheckBox надо ?!

    Заранее большое спасибо.
    Я только начинающий :( не судите строго.
     
  2. Barmutik

    Barmutik Гость

    Всё зависит от выбранного Вами языка программирования. Практически в любом языке есть классы для работы с реестром Windows. Вот туда и смотреть...
     
  3. craf

    craf Гость

    Если можете, помогите пожалуйста сделать этот трюк на Visual Basic 6.0. Чтобы с помощью CheckBox'a (поставив галочку) менялся ключ реестра например - с 0 на 1.

    спасибо...
     
  4. Hetman

    Hetman Гость

    Как записать\прочитать параметр в реестр


    (из FAQ)Автор : Andrey_Kun
    Код (Text):
    Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
    Private Declare Function RegOpenKeyEx Lib "advapi32" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
    Private Declare Function RegSetValueEx Lib "advapi32" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, ByVal szData As String, ByVal cbData As Long) As Long
    Private Declare Function RegCloseKey Lib "advapi32" (ByVal hKey As Long) As Long
    Private Declare Function RegQueryValueEx Lib "advapi32" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, ByRef lpType As Long, ByVal szData As String, ByRef lpcbData As Long) As Long
    Private Declare Function RegCreateKeyEx Lib "advapi32" Alias "RegCreateKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal Reserved As Long, ByVal lpClass As String, ByVal dwOptions As Long, ByVal samDesired As Long, ByRef lpSecurityAttributes As Long, phkResult As Long, lpdwDisposition As Long) As Long
    Private Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long)
    ' Registry keys
    Private Enum hKey
    HKEY_CLASSES_ROOT = &H80000000
    HKEY_CURRENT_USER = &H80000001
    HKEY_LOCAL_MACHINE = &H80000002
    HKEY_USERS = &H80000003
    HKEY_PERFORMANCE_DATA = &H80000004
    HKEY_CURRENT_CONFIG = &H80000005
    HKEY_DYN_DATA = &H80000006
    End Enum
    ' Registry access constants
    Private Enum Reg
    KEY_QUERY_VALUE = &H1
    KEY_SET_VALUE = &H2
    KEY_CREATE_SUB_KEY = &H4
    KEY_ENUMERATE_SUB_KEYS = &H8
    KEY_NOTIFY = &H10
    KEY_CREATE_LINK = &H20
    KEY_READ = KEY_QUERY_VALUE Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY
    KEY_WRITE = KEY_SET_VALUE Or KEY_CREATE_SUB_KEY
    KEY_ALL_ACCESS = KEY_QUERY_VALUE Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY Or KEY_CREATE_SUB_KEY Or KEY_CREATE_LINK Or KEY_SET_VALUE
    REG_OPTION_NON_VOLATILE = 0&
    REG_OPTION_VOLATILE = &H1
    End Enum
    Private Function RegGetString(Root As hKey, SubKey As String, Key As String) As String
    Dim Buffer As String, hKey As Long, nType As Long, nSize As Long
    RegGetString = 0
    If Not RegOpenKeyEx(Root, SubKey, 0, KEY_READ, hKey) Then
    nSize = 0
    Call RegQueryValueEx(hKey, Key, 0, nType, Buffer, nSize)
    If hKey And nSize > 0 And nType = 1 Then
    Buffer = Space(nSize + 1)
    RegQueryValueEx hKey, Key, 0, nType, Buffer, nSize
    RegGetString = Left(Buffer, nSize - 1)
    Call RegCloseKey(hKey)
    End If
    End If
    End Function
    Private Sub RegSetString(Root As Long, SubKey As String, Key As String, Value As String)
    Dim hKey As Long, nDisp As Long
    If Not RegCreateKeyEx(Root, SubKey, 0, vbNull, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, 0, hKey, nDisp) Then
    Call RegSetValueEx(hKey, Key, 0, 1, Value, Len(Value) + 1)
    Call RegCloseKey(hKey)
    End If
    End Sub
    Public Function RegGetDWORD(Root As Long, SubKey As String, strValueName As String) As Long
    Dim lResult As Long, lValueType As Long, lBuf As Long, lDataBufSize As Long, keyhand As Long
    Call RegOpenKey(Root, SubKey, keyhand)
    lDataBufSize = 4
    lResult = RegQueryValueEx(keyhand, strValueName, 0&, lValueType, lBuf, lDataBufSize)
    If lResult = 0 And lValueType = 4 Then RegGetDWORD = lBuf
    Call RegCloseKey(keyhand)
    End Function
    Public Sub RegSetDWORD(Root As Long, SubKey As String, strValueName As String, ByVal Value As Long)
    Dim lResult As Long, keyhand As Long
    Call RegCreateKey(Root, SubKey, keyhand)
    lResult = RegSetValueEx(keyhand, strValueName, 0&, 4, Value, 4)
    Call RegCloseKey(keyhand)
    End Sub

    могу кинуть Faq там есть мого полезного

    B)
     
  5. Guest

    Guest Гость

    да, если можно, киньте пожалуйста Faq.
     
  6. Hetman

    Hetman Гость

    Для: Guest
    если хочешь Faq вероятно придётся зарегистрироваться кинь мне личное сообщение с адресом твоего мыла или стучись в ICQ (внизу слева от моего сообщения кликни "Сообщение" или "Визитка") (с этим форумом ещё полностью не разобрался)
     
  7. Hetman

    Hetman Гость

    Для: Barmutik а как аттач сделать? и что б его скачать регистрация, вероятней всего, нужна?
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей