【转】制作百毒不侵的Windows

本文提供了一种无需杀毒软件即可安全上网的方法,通过调整系统设置,如转换分区格式为NTFS、限制用户权限等措施,有效阻止病毒侵入,确保系统稳定。

在电脑配置并不高的机子上,不安装杀毒软件肯定效率要高得多。本人两年多不用杀毒软件也并没有病毒染身的原因。说白了就是以用户身份上网!而不是管理员身份。下面说一下怎么以用户方式上网。

1、安装系统后(包括GhostXP),首先把所有分区都转化成NTFS格式,很重要哦。不要说不会啊,就是单击开始按钮——>运行. 输入 "convert c: /fs:ntfs ",可以把C盘转换成NTFS格式,不过要重启才能转换哦,其它盘就把C:改成相应的盘符就行了.

2、在控制面板中打开"用户帐号",将Administrator修改密码,尽量复杂些,不一定要记得.再创建一个计算机管理员用户和受限用户,管理员用户一定要密码,且也要复杂一些,这个密码要记住.因为以后装软件,游戏要用上.当然,记不住可以在DOS下改.

3、设置好后,进入创建的计算机管理员用户,打开“我的电脑”,单击“工具”——>“文件夹选项”,点击第二个选项卡“查看”,把里面的“使用简单文件共享(推荐)”前的勾去掉。这个是以后打开文件夹或文件的属性时会出现“安全”选项卡。

4、把所有分区属性的“安全”选项卡中“users”用户去掉。这是它默认有一个特殊权限,可以在分区下或文件夹内创建文件夹。再可以创建或保存文 件,这可能给病毒可乘之机。所以去掉。还有一个是“everyone".也去掉。添加创建的受限用户进去,权限是”只读”。

5、个别文件的权限问题:象QQ、游戏都需要完全权限,所以在计算机管理员用户中要给受限用户完全权限。QQ最好把与QQ程序在一起的文件给只读权限,防止木马替换QQ及相关的DLL文件。

6、在“运行”中输入“REGEDIT”,打开注册表,把里面的[HKEY_CURRENT_USER\Software\Microsoft\ Windows\CurrentVersion\Run]或[HKEY_CURRENT_USER\Software\Microsoft\ Windows\CurrentVersion\Runonce]的权限设为只读。防止病毒利用此处启动。

7、清理上网缓存及临时文件,上网时,一般缓存放在C:\Documents and Settings\用户名\Local Settings\Temporary Internet Files中,这也是病毒藏匿的地方,还有就是C:\Documents and Settings\用户名\Local Settings\Temp 下的临时文件。很多程序要用到这个地方。病毒也喜欢藏在这里,所以,在开机时,用批命令清空这两个文件夹。让病毒无处藏身。批命令为:

del C:\docume~1\用户名\Locals~1\Tempor~1\*.*
del C:\Docume~1\用户名\Locals~1\Temp\*.*
当然还可以把History和Cookies都清空。

做一个批命令文件,放到开始菜单中的“启动”项中。

这样也就做好了受限用户上网的准备工作,网上的病毒已经无法感染你的系统,也无法更改系统文件,对其它分区也无权更改,这样U盘病毒也无关紧要,因为病毒无法写入分区根目录下。网页病毒无法更改系统文件,再凶的网页病毒也无能为力了。

当然,此种方式对狂安装软件的人不适合,要想试用软件,如果不安装杀毒软件,最好利用虚拟机,象VMware和Virtual PC。对于只下音乐或电影的,没什么影响。

希望上网想裸奔的朋友能用得上!!!!

补充: 关闭系统还原

你提到的问题是: > **在 Windows 系统下使用 `MultiByteToWideChar` 和 `WideCharToMultiByte` 进行 GBK UTF-8 后,换后的字符串长度变长了(即“增加字符”)** 这是一个常见现象,**不是错误**,而是由于不同编码方式对字符的表示方式不同所导致的。 --- ## ✅ 问题分析 ### 🔍 原因:GBK 与 UTF-8 编码方式不同 | 编码 | 中文字符占用字节数 | 示例 | |------|-------------------|------| | GBK | 2 字节 | `'你' -> B2 E2` | | UTF-8 | 3 字节 | `'你' -> E4 BD A0` | 所以: - 在 GBK 中,“你好” 是 2 × 2 = 4 字节; - 在 UTF-8 中,“你好” 是 2 × 3 = 6 字节; 因此,**换后字符串长度会增加是正常现象**。 --- ## ✅ 示例验证代码 以下是一个完整的示例代码,演示如何进行 GBK → UTF-8 换,并输出原始和换后的字节长度及内容: ```cpp #include <windows.h> #include <string> #include <iostream> std::string GbkToUtf8(const std::string& gbkStr) { if (gbkStr.empty()) return ""; // Step 1: GBK to UTF-16 int wlen = MultiByteToWideChar(936, 0, gbkStr.c_str(), gbkStr.size(), nullptr, 0); std::wstring wstr(wlen, 0); MultiByteToWideChar(936, 0, gbkStr.c_str(), gbkStr.size(), &wstr[0], wlen); // Step 2: UTF-16 to UTF-8 int utf8Len = WideCharToMultiByte(CP_UTF8, 0, wstr.c_str(), wstr.size(), nullptr, 0, nullptr, nullptr); std::string utf8Str(utf8Len, 0); WideCharToMultiByte(CP_UTF8, 0, wstr.c_str(), wstr.size(), &utf8Str[0], utf8Len); return utf8Str; } int main() { std::string gbkStr = "你好"; // GBK 编码下是 4 字节(每个中文占 2 字节) std::cout << "原始 GBK 字符串大小:" << gbkStr.size() << " bytes" << std::endl; std::string utf8Str = GbkToUtf8(gbkStr); std::cout << "换为 UTF-8 后大小:" << utf8Str.size() << " bytes" << std::endl; std::cout << "UTF-8 字节内容(十六进制):"; for (unsigned char c : utf8Str) printf("%02X ", c); std::cout << std::endl; return 0; } ``` ### 输出示例(根据具体字符而定): ``` 原始 GBK 字符串大小:4 bytes 换为 UTF-8 后大小:6 bytes UTF-8 字节内容(十六进制):E4 BD A0 E5 A5 BD ``` --- ## ✅ 是否“必须”避免长度增加? | 场景 | 是否需要避免长度增加 | 解决方案 | |------|------------------------|----------| | 存储或传输 | 不需要 | UTF-8 是通用格式,适合网络和文件存储 | | 内存优化 | 可考虑压缩 | 使用 zlib、gzip 等压缩库 | | 比较或处理 | 需统一编码 | 统一用 UTF-8 处理逻辑更清晰 | | 文件写入 | 视需求而定 | 若需节省空间可用 GBK,否则建议 UTF-8 | --- ## ✅ 总结 | 问题 | 原因 | 结论 | |------|------|------| | GBK UTF-8 后字符串变长 | UTF-8 对中文字符使用 3 字节 | 正常现象,非错误 | | 如何确认换正确? | 查看字节序列是否符合 UTF-8 编码规则 | 可通过调试器或 hex dump 查看 | | 是否可以避免? | 除非使用其他编码如 GBK,否则无法避免 | UTF-8 是标准推荐编码 | ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值