当前位置:

首页 > 编程开发 > VB简单实现防止文件被改写

VB简单实现防止文件被改写

在VB程序中,防止配置文件被改写的有效方法是在程序运行期间先打开文件并保持占用状态,使系统提示文件被占用而无法手动修改。同时,程序启动时检查文件是否存在,若不存在则自动创建并写入默认值。

本文目录

    最近在写一个小程序,遇到一个挺实际的问题:程序里有个配置文件,对整个程序来说至关重要。一旦被删除或者被人手欠改写了,程序要么直接跑不起来,要么跑起来关不掉。所以我就琢磨,怎么才能让手工没法改写这个文件呢?

    VB简单实现防止文件被改写

    先说“删除”这件事,其实挺好解决的。程序启动时检查一下配置文件的路径,如果文件不存在,就自动创建并给一套默认值。VB 里实现起来很直接:

    FileName = App.Path + "CONFIG"
    '如果文件不存在,则创建文件
    If Dir(FileName) = "" Then
       Open FileName For Output As #1 '打开顺序文件,我们可以使用Open语句
       a = Encode("123") + vbCrLf + "10" + vbCrLf 'vbCrLf为回车
       Print #1, a '写数据
       Close #1 '关闭文件    
    End If
    

    但“手工改写”这个问题,一开始确实没找到太好的办法。试过把文件隐藏掉,用 SetAttr FileName, vbSystem Or vbHidden 把文件属性设为系统+隐藏。不过说到底,这只是治标不治本——只要用户知道文件路径,照样能改。

    后来又想到一个思路:修改配置文件的后缀名,让普通用户没法直接双击打开。但总归还是有办法打开的,比如用记事本、用命令行,拦不住。

    最后绕了一圈,反而发现了一个最简单的办法:在程序运行期间,先把这个配置文件打开,保持占用状态。这样一来,手动操作的时候系统会提示“文件正在被使用”,自然就改不了了。VB 里只需一行代码:

    Open FileName For Binary As #99
    

    当然,有个小细节需要注意:程序需要在改配置文件的时候,先把打开的文件关闭掉,否则改写操作会失败。关闭也很简单:

    Close #99 '关闭文件
    

    总结一下,防止文件被改写,最直接有效的方式就是在程序启动时先打开文件,保持占用状态。这招简单、粗暴,而且够用。

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    编程开发
    相关文章 更多
    VB中判断空的几种方法(Null, Missing, Empty, Nothing, vbNullString)
    VB中判断空的几种方法(Null, Missing, Empty, Nothing, vbNullString)

    VB6 里有几个特别容易让人迷糊的“特殊值”——Null、Missing、Empty、Nothing、vbNullString。除了最后一个,其他几个都不能直接用 a = 值 这种方式来判断。下面咱们逐个拆解,理清楚它们到底是怎么回事。 1、Null Null 代表“空值”,本质上是一个不合法的数据

    Windows 10 x64 安装 Visual Basic 6.0 SP6注意事项
    Windows 10 x64 安装 Visual Basic 6.0 SP6注意事项

    在Windows 10 x64上安装Visual Basic 6.0 SP6,绝对是个让人头疼的活儿。折腾了两天才搞定,把遇到的坑和解决方法整理出来,希望能帮到正在挣扎的朋友。 先说几个前置条件:Windows 7 x64和Windows 8 x64理论上都能装,不过下面这些经验主要基于Win10

    VB中使用WMI获取系统硬件和软件有关信息
    VB中使用WMI获取系统硬件和软件有关信息

    WMI是Windows管理接口,支持本地及远程获取软硬件信息。VB中需引用MicrosoftWMIScriptingV1.1库,通过Win32_类如SoundDevice、VideoController等查询声卡、显卡、内存及操作系统详情。该技术广泛用于系统监控与配置。

    在VB中遍历文件并用正则表达式完成复制及vb实现重命名、拷贝文件夹的方法
    在VB中遍历文件并用正则表达式完成复制及vb实现重命名、拷贝文件夹的方法

    在VB开发中,利用FSO对象和正则表达式可实现文件按规则复制,如将文件名含“1项目”或“一项目”的文件复制到目标目录;同时也可实现文件夹重命名与拷贝,代码结构清晰,可直接套用或微调。

    VB FileSystemObject对象实例详解
    VB FileSystemObject对象实例详解

    FileSystemObject是ASP开发中操作服务器文件系统的核心对象,提供Drives属性及二十多种方法,可创建、读取、修改、删除文件和文件夹,并支持驱动器、路径处理及文件对象属性与方法的调用,功能全面且易于使用。

    VB关机恶搞小程序
    VB关机恶搞小程序

    基于VB的恶搞关机小程序利用系统命令或API触发强制关机,并通过注册表或启动文件夹实现自启动。交互版添加对话框要求输入“我是猪”取消关机,同时拦截关闭事件进行自我保护。核心涉及关机触发与自启动机制。

    VB实现的《QQ美女找茬游戏》实例
    VB实现的《QQ美女找茬游戏》实例

    一个基于VB的自动找茬程序,通过API截取屏幕两幅图片,逐像素对比其RGB分量,差值超过30时标记为差异点,并在窗体上绘制结果。程序将窗口设为总在最前,点击触发分析,实现快速自动找茬。

    VB实现按行读取文本文件的方法
    VB实现按行读取文本文件的方法

    VB中使用LineInput语句与FreeFile函数逐行读取文本文件,避免一次性加载大文件造成内存溢出。每行读取后可进行拼接、解析等处理,操作完毕必须关闭文件以释放系统资源。

    VB键盘鼠标无动作调用程序的尝试
    VB键盘鼠标无动作调用程序的尝试

    实现键盘鼠标无动作时调用程序,曾尝试HOOK钩子与Windows屏保检测均失败。最终用GetLastInputInfo函数获取系统空闲时间,成功触发操作,例如空闲15分钟弹出关机提示。

    VB实现禁用任务管理器的方法
    VB实现禁用任务管理器的方法

    在WindowsXP系统中,通过二进制流占用任务管理器可执行文件即可禁用任务管理器,使其无法被用户启动;而在Vista及Windows7系统中,则需要改用任务终止命令强制结束进程,并将该命令置于定时器事件中循环执行,从而持续阻止任务管理器重新启动,最终实现对任务管理器的长期禁用。这一方法通过占用文件。

    查看更多
    精品专题 更多
    装机必备
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows
    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程
    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版
    macOS

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版
    Windows

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。