【开源项目】花密(Flower Password)VB版之设置读写模块

'*****************************************************************
' Copyright (c) 2011-2012 FlowerPassword.com All rights reserved.
'      Author : xLsDg @ Xiao Lu Software Development Group
'        Blog : http://hi.baidu.com/xlsdg
'          QQ : 4 4 7 4 0 5 7 4 0
'     Version : 1 . 0 . 0 . 0
'        Date : 2 0 1 2 / 0 4 / 0 7
' Description :
'     History :
'*****************************************************************
Option Explicit

Public isAutoMini        As Boolean

Public isAutoCopy        As Boolean

Public isAutoUseDomain   As Boolean

Public isDomainSuffix    As Boolean

Public isAutoAddUserCode As Boolean

Public isPrefix          As Boolean

Public isSuffix          As Boolean

Public isSetting         As Boolean

Public isLoading         As Boolean

Public isExit            As Boolean

Public Function AddStrToCombox(cbBox As ComboBox, ByVal strKey As String) As Boolean

    If Len(strKey) > 0 Then
        If CheckCombox(cbBox, strKey) Then
            AddStrToCombox = False
        Else
            cbBox.AddItem strKey
            AddStrToCombox = True

        End If

    End If

End Function

Public Function CheckCombox(cbBox As ComboBox, ByVal strKey As String) As Boolean

    Dim i As Long

    CheckCombox = False

    For i = 0 To cbBox.ListCount - 1

        If cbBox.List(i) = strKey Then
            CheckCombox = True
            Exit For

        End If

    Next

End Function

Public Sub LoadSetting()
    isExit = False
    Call LoadData

    Dim strSettingPath As String

    strSettingPath = App.Path + "\Config.ini"

    If ReadIni("Setting", "AutoMini", strSettingPath) = "1" Then
        isAutoMini = True
    Else
        isAutoMini = False

    End If

    If ReadIni("Setting", "AutoCopy", strSettingPath) = "0" Then
        isAutoCopy = False
        FrmMain.chkAutoCopy.value = Unchecked
    Else
        isAutoCopy = True
        FrmMain.chkAutoCopy.value = Checked

    End If

    If ReadIni("Setting", "AutoUseDomain", strSettingPath) = "0" Then
        isAutoUseDomain = False
        FrmMain.chkAutoUseDomain.value = Unchecked
    Else
        isAutoUseDomain = True
        FrmMain.chkAutoUseDomain.value = Checked

    End If

    If ReadIni("Setting", "DomainSuffix", strSettingPath) = "1" Then
        isDomainSuffix = True
        FrmMain.chkDomainSuffix.value = Checked
    Else
        isDomainSuffix = False
        FrmMain.chkDomainSuffix.value = Unchecked

    End If

    If ReadIni("Setting", "AutoAddCode", strSettingPath) = "1" Then
        isAutoAddUserCode = True
        FrmMain.chkAutoAddUserCode.value = Checked
        FrmMain.chkAddUserCode.value = Checked
    Else
        isAutoAddUserCode = False
        FrmMain.chkAutoAddUserCode.value = Unchecked
        FrmMain.chkAddUserCode.value = Unchecked

    End If

    If ReadIni("Setting", "Prefix", strSettingPath) = "1" Then
        isPrefix = True
        FrmMain.optPrefix.value = True
    Else
        isPrefix = False
        FrmMain.optPrefix.value = False

    End If

    If isPrefix Then
        isSuffix = False
        FrmMain.optSuffix.value = False
    Else
        isSuffix = True
        FrmMain.optSuffix.value = True

    End If

    isLoading = True
    Call LoadUserCode
    isLoading = False

End Sub

Public Sub SaveSetting()

    Dim strSettingPath As String

    strSettingPath = App.Path + "\Config.ini"

    If FrmMain.chkAutoCopy.value = Checked Then
        isAutoCopy = True
        WriteIni "Setting", "AutoCopy", "1", strSettingPath
    Else
        isAutoCopy = False
        WriteIni "Setting", "AutoCopy", "0", strSettingPath

    End If

    If FrmMain.chkAutoUseDomain.value = Checked Then
        isAutoUseDomain = True
        WriteIni "Setting", "AutoUseDomain", "1", strSettingPath
    Else
        isAutoUseDomain = False
        WriteIni "Setting", "AutoUseDomain", "0", strSettingPath

    End If

    If FrmMain.chkDomainSuffix.value = Checked Then
        isDomainSuffix = True
        WriteIni "Setting", "DomainSuffix", "1", strSettingPath
    Else
        isDomainSuffix = False
        WriteIni "Setting", "DomainSuffix", "0", strSettingPath

    End If

    If FrmMain.chkAutoAddUserCode.value = Checked Then
        FrmMain.chkAddUserCode.value = Checked
        isAutoAddUserCode = True
        WriteIni "Setting", "AutoAddCode", "1", strSettingPath
    Else
        FrmMain.chkAddUserCode.value = Unchecked
        isAutoAddUserCode = False
        WriteIni "Setting", "AutoAddCode", "0", strSettingPath

    End If

    If FrmMain.optPrefix.value = True Then
        isPrefix = True
        WriteIni "Setting", "Prefix", "1", strSettingPath
        isSuffix = False
        WriteIni "Setting", "Suffix", "0", strSettingPath
    ElseIf FrmMain.optSuffix.value = True Then
        isPrefix = False
        WriteIni "Setting", "Prefix", "0", strSettingPath
        isSuffix = True
        WriteIni "Setting", "Suffix", "1", strSettingPath

    End If

    AddStrToCombox FrmMain.comUserCode, FrmMain.comUserCode.Text
    Call SaveUserCode

End Sub

Private Sub LoadUserCode()

    Dim strSettingPath As String

    strSettingPath = App.Path + "\Config.ini"

    Dim strUserCode As String

    strUserCode = ReadIni("Setting", "UserCode", strSettingPath)

    If Len(strUserCode) > 0 Then

        Dim strCode() As String

        strCode = Split(strUserCode, Chr$(1), -1, vbBinaryCompare)

        Dim index As Long

        For index = LBound(strCode) To UBound(strCode)

            If Len(strCode(index)) > 0 Then
                FrmMain.comUserCode.AddItem strCode(index)

            End If

        Next
        strUserCode = ReadIni("Setting", "LastUserCode", strSettingPath)

        If Len(strUserCode) > 0 Then
            index = CLng(strUserCode)

            If 0 <= index And index <= FrmMain.comUserCode.ListCount - 1 Then
                FrmMain.comUserCode.Text = FrmMain.comUserCode.List(index)

            End If

        End If

    End If

End Sub

Private Sub SaveUserCode()

    Dim strSettingPath As String

    strSettingPath = App.Path + "\Config.ini"

    Dim index As Long, strCode As String

    strCode = ""

    For index = 0 To FrmMain.comUserCode.ListCount - 1

        If index + 1 <> FrmMain.comUserCode.ListCount Then
            strCode = strCode + FrmMain.comUserCode.List(index) + Chr$(1)
        Else
            strCode = strCode + FrmMain.comUserCode.List(index)

        End If

    Next
    WriteIni "Setting", "UserCode", strCode, strSettingPath

    If FrmMain.comUserCode.ListIndex < 0 Then
        WriteIni "Setting", "LastUserCode", FrmMain.comUserCode.ListCount - 1, strSettingPath
    Else
        WriteIni "Setting", "LastUserCode", FrmMain.comUserCode.ListIndex, strSettingPath

    End If

End Sub


花密 Flower Password --- 可记忆的码管理方案 有别于一般码管理方式,“花密”是一种可记忆、非储存的码管理方案,你只需记住一个“记忆码”加上“区分代号”就可以使用“花密”为不同的账号生成难以破解的强壮码。介绍说明:http://flowerpassword.com/guide 本Chrome插件用于简化花密的操作。 使用: 当用户在任意页面聚焦到任意码输入框时,下面会弹出花密的输入窗口,输入记忆码和区分代号之后,生成的码会自动填充到该码输入框中。 在页面的任意位置按Alt+S可聚焦到记忆码输入框;在页面任意地方按Alt+W,或者在花密的输入框中按Enter键或Esc键将关闭花密的窗口。 单击地址栏右边的花密图标,可针对该网站选择启用或停用花密插件。 可以在全局设置设置是否默认在所有网站启用花密。 更新: v2.0.5: * 修复 Chrome 74 本中码弹窗无法显示的问题 v2.0.4: * 花密官网web页面中不再调用chrome扩展 * 移除花密窗口中的设置链接 v2.0.3: * 修复 chrome 50 本中,区分代码少一位的bug v2.0.2: * 使用最新的Chrome API v2.0.1: * 检查本地数据被禁用导致无法保存设置的情况,并给出提示 v2.0: * 在网页内部iframe外显示花密窗口,从而使花密窗口不被遮盖 * 隔离网页与花密窗口,使花密窗口不受网页样式影响而走样 * 检查并提示记忆码强度 * 改为鼠标悬停提示的形式 * 自动将生成的码复制到剪贴板(默认关闭) v1.5 * 默认将花密窗口置于码输入框右边 * 取消记忆码和区分代号的长度限制 * 在花密网页上停用花密Chrome插件 * 更新官网网址为flowerpassword.com * 在花密窗口中提示一个设置是全局设置还是局部设置 v1.4 * 花密窗口可移动 v1.3.2 * 修正了判断鼠标点击是否在花密窗口外的一个错误 v1.3.1 * 上传到Web Store v1.3 * 点击页面其他地方隐藏花密窗口 * 花密窗口自动半透明(默认关闭) * 网页窗口大小变化后重新定位花密窗口 v1.2 * 自动保存并默认填入上次使用的区分代号 * 默认填写和上次保存的区分代号用不同颜色表示 v1.1 * 可以在默认区分代号后加上附加扰码,用于提高默认区分代号的强度 v1.0.6 * 一些性能优化 v1.0.5 * 根据码输入框的maxlength值(如果小于16的话)对生成的码进行截尾 v1.0.4 * “区分代号”错写成“分区代号” v1.0.3 * 在页面任意地方按Alt+W将关闭花密的窗口 v1.0.2 * 修正Chrome启动时,地址栏图标丢失的问题 v1.0.1 * 修正页面更新时,地址栏图标丢失的问题 v1.0 * 支持针对每个网站的插件开关 * 支持全局的插件开关 * 新增全局设置 * 提示可收起 v0.5.1 * 按Alt+S可聚焦到记忆码输入框 v0.5 * 支持默认将网站域名填入区分代号 v0.4 * 从GreaseMonkey脚本(http://userscripts.org/scripts/show/121401)直接改过来的最初本 支持语言:中文 (简体)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值