鱼C论坛

 找回密码
 立即注册
查看: 4163|回复: 6

[技术交流] MFC写的一个hosts网站重定向工具

[复制链接]
发表于 2015-12-7 22:00:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 黑龍 于 2015-12-7 22:19 编辑

先上图
11.png
111.png
那啥 源码实在太大了 我也不发了 直接把主程序代码发来(我没有用unicode的字节集哦 我设置的是公用字节集) IDLE:vs2012
// MFCApplication8Dlg.cpp : 实现文件
//

#include "stdafx.h"
#include "MFCApplication8.h"
#include "MFCApplication8Dlg.h"
#include "afxdialogex.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#endif


// CMFCApplication8Dlg 对话框



CMFCApplication8Dlg::CMFCApplication8Dlg(CWnd* pParent /*=NULL*/)
        : CDialog(CMFCApplication8Dlg::IDD, pParent)
{
        m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

void CMFCApplication8Dlg::DoDataExchange(CDataExchange* pDX)
{
        CDialog::DoDataExchange(pDX);
}

BEGIN_MESSAGE_MAP(CMFCApplication8Dlg, CDialog)
        ON_WM_PAINT()
        ON_WM_QUERYDRAGICON()
        ON_BN_CLICKED(IDC_BUTTON1, &CMFCApplication8Dlg::OnBnClickedButton1)
END_MESSAGE_MAP()


// CMFCApplication8Dlg 消息处理程序

BOOL CMFCApplication8Dlg::OnInitDialog()
{
        CDialog::OnInitDialog();

        // 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
        //  执行此操作
        SetIcon(m_hIcon, TRUE);                        // 设置大图标
        SetIcon(m_hIcon, FALSE);                // 设置小图标
        // TODO: 在此添加额外的初始化代码
        CString t=(CString)"===要跳转的网站地址===";
        CString e=(CString)"======跳转到=======";
        GetDlgItem(IDC_EDIT1)->SetWindowText(t);
        GetDlgItem(IDC_EDIT2)->SetWindowText(e);
        return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE
}

// 如果向对话框添加最小化按钮,则需要下面的代码
//  来绘制该图标。对于使用文档/视图模型的 MFC 应用程序,
//  这将由框架自动完成。

void CMFCApplication8Dlg::OnPaint()
{
        if (IsIconic())
        {
                CPaintDC dc(this); // 用于绘制的设备上下文

                SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);

                // 使图标在工作区矩形中居中
                int cxIcon = GetSystemMetrics(SM_CXICON);
                int cyIcon = GetSystemMetrics(SM_CYICON);
                CRect rect;
                GetClientRect(&rect);
                int x = (rect.Width() - cxIcon + 1) / 2;
                int y = (rect.Height() - cyIcon + 1) / 2;

                // 绘制图标
                dc.DrawIcon(x, y, m_hIcon);
        }
        else
        {
                CDialog::OnPaint();
        }
}

//当用户拖动最小化窗口时系统调用此函数取得光标
//显示。
HCURSOR CMFCApplication8Dlg::OnQueryDragIcon()
{
        return static_cast<HCURSOR>(m_hIcon);
}



void CMFCApplication8Dlg::OnBnClickedButton1()
{
        // TODO: 在此添加控件通知处理程序代码
        CString a,b;
        char web[100];
        char website[100];
        char an[200];
        char* err="设置网站重定向失败!";
        FILE *File;
        GetDlgItem(IDC_EDIT1)->GetWindowText(b);
        GetDlgItem(IDC_EDIT2)->GetWindowText(a);
        File=fopen("C:\\WINDOWS\\system32\\drivers\\etc\\hosts","a+");
        if(!File)
                MessageBox((LPCTSTR)"设置网站重定向失败!");
        else if(!feof(File))
        {
                strcpy(web,(LPSTR)(LPCTSTR)b);
                strcpy(website,(LPSTR)(LPCTSTR)a);
                if(strcmp(web,"")<=0)
                        MessageBox((LPCTSTR)"请将信息填写完整","错误:");
                else if(strcmp(website,"")<=0)
                        MessageBox((LPCTSTR)"请将信息填写完整","错误:");
                else
                {
                        strcpy(an,strncat(website,"        ",strlen("        ")));
                        strcpy(an,strncat(an,web,strlen(web)));
                        fprintf(File,"\r\r\n%s\r\r\n",an);
                        fclose(File);//关闭文件
                        MessageBox((LPCTSTR)"网站重定向设置完毕!","信息:");
                }
        }
}

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +5 收起 理由
康小泡 + 5 + 5 + 5 热爱鱼C^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2015-12-7 22:17:21 From FishC Mobile | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-12-8 11:25:26 | 显示全部楼层
支持 前排。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-12-8 23:58:11 | 显示全部楼层
这个 可以有,支持一个
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-12-9 10:08:20 | 显示全部楼层
这个玩意不错啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-12-9 22:21:37 From FishC Mobile | 显示全部楼层
无名侠 发表于 2015-12-8 23:58
这个 可以有,支持一个

最近想变成动态数组 试试我能不能做到吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-12-11 22:14:41 | 显示全部楼层
黑龍 发表于 2015-12-9 22:21
最近想变成动态数组 试试我能不能做到吧

一般都是链表把
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-23 17:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表