24小时热门版块排行榜    

查看: 935  |  回复: 10
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

小快乐小知足

金虫 (初入文坛)

[求助] VC++6.0求助

用VC++6.0做了两个工程文件工程1.exe和工程2.exe,运行工程1时,可以转入工程2中继续运行,运行完还能回到工程1中.我两个工程文件是放在一个文件夹中,两个工程现在是可以分别打开运行的,"问题是我想只能从工程1进入,然后从1中再调用2运行,不想工程2能直接运行,只有通过1的调用(而且只有放在一个文件夹下工程1才能调用工程2).要怎样才能使工程2不能直接打开运行呢?"
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

anntoy

木虫 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
小快乐小知足: 金币+25, ★★★★★最佳答案 2012-10-06 09:27:40
引用回帖:
8楼: Originally posted by 小快乐小知足 at 2012-10-05 18:31:47
我不怎么会用这个?能麻烦你说细一点吗?谢谢了!!!!!
补充:我建的两个工程都是"MFC AppWizard(exe)"...

两个工程都是dialog based,很简单,创建之后修的地方有
A工程:
aDlg.h文件中
CODE:
class CADlg : public CDialog
{
// Construction
public:
        CADlg(CWnd* pParent = NULL);        // standard constructor
        HANDLE mutexhandle;

mutexhandle为添加的一个全局变量
aDlg.cpp文件
CODE:
void CADlg::OnDestroy()
{
        CDialog::OnDestroy();
        CloseHandle(mutexhandle);/*这行是增加的,退出的时候关闭句柄*/
        // TODO: Add your message handler code here
}

CODE:
BOOL CADlg::OnInitDialog()
{
        CDialog::OnInitDialog();
        /*此处省略一部分代码,下面那行是添加的,程序初始化的时候,初始化那个mutex*/
        // TODO: Add extra initialization here
        mutexhandle = CreateMutex(NULL,TRUE,"MyMutex");

        return TRUE;  // return TRUE  unless you set the focus to a control
}

当然了,还有这里,点按钮的时候运行B
CODE:
void CADlg::OnButton1()
{
        // TODO: Add your control notification handler code here
        WinExec("b.exe",SW_SHOW        );
}

b工程中修改就少了,只有bDlg.cpp需要修改,也是初始化函数
CODE:
BOOL CBDlg::OnInitDialog()
{
        /*省略部分代码,下面是初始化的时候,判断有没有被创建过mutex,如果还没有,就退出*/
        // TODO: Add extra initialization here
        int ret;
        HANDLE h;
        h = CreateMutex(NULL,FALSE,"MyMutex");
        ret = GetLastError();
        CloseHandle(h);
        if(ERROR_ALREADY_EXISTS != ret)
                ExitProcess(0);
        return TRUE;  // return TRUE  unless you set the focus to a control
}

aa.rar(47.17KB)
http://kuai.xunlei.com/d/GAKJFLKFPEFK?p=130497
10楼2012-10-06 01:22:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 11 个回答

小快乐小知足

金虫 (初入文坛)

引用回帖:
2楼: Originally posted by jmck99 at 2012-10-04 02:19:20
把工程2写成dll

在dll中很多功能我实现不了.
3楼2012-10-04 09:36:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

anntoy

木虫 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
工程1中创建mutex工程2去读取这个,读取不到就退出
一般软件禁止双开都是这么干的,不过那种是能检测到就退出,和这个相反
4楼2012-10-05 00:16:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

anntoy

木虫 (著名写手)

【答案】应助回帖

用到的API
    HANDLE OpenMutex(

    DWORD dwDesiredAccess,        // access flag
    BOOL bInheritHandle,        // inherit flag
    LPCTSTR lpName         // pointer to mutex-object name
   );

HANDLE CreateMutex(

    LPSECURITY_ATTRIBUTES lpMutexAttributes,        // pointer to security attributes
    BOOL bInitialOwner,        // flag for initial ownership
    LPCTSTR lpName         // pointer to mutex-object name  
   );

BOOL ReleaseMutex(

    HANDLE hMutex         // handle of mutex object  
   );
5楼2012-10-05 00:19:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 k0dTPqJtl0jt 2026-08-14 4/200 2026-08-15 01:28 by 4wMiSEwB6436
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[考研] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 7lpolszZVXgi 2026-08-14 5/250 2026-08-15 00:52 by 4wMiSEwB6436
[考研] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 HFw0lei2R37i 2026-08-14 7/350 2026-08-15 00:40 by 4wMiSEwB6436
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 22/1100 2026-08-14 23:45 by Noways
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[教师之家] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 HFw0lei2R37i 2026-08-14 5/250 2026-08-14 22:32 by 4wMiSEwB6436
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +5 Ldrop2023 2026-08-13 5/250 2026-08-14 18:48 by ssxclkj
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +6 majunge000 2026-08-11 8/400 2026-08-14 14:44 by 医学老男孩
[论文投稿] 职称评审,求友友推荐见刊最快的期刊 +5 工厂打螺丝 2026-08-08 5/250 2026-08-14 11:03 by 玖戈弋
[硕博家园] 读博的好处 +4 lnee 2026-08-11 4/200 2026-08-14 10:20 by ahsoarli
[基金申请] filecode +15 documentary 2026-08-10 17/850 2026-08-14 10:08 by kissu88
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 综述论文作为代表作会不会影响评审专家的印象分? +11 yufeiwaner 2026-08-09 13/650 2026-08-12 08:17 by yufeiwaner
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
信息提示
请填处理意见