因为不会MFC,就用C#做界面,编辑和编译功能都用C写的,请问这样能实现吗?

解决方案 »

  1.   

    当然可以了 用动态库方式和COM组件方式c中的一切类型C#中都是支持的
      

  2.   

    MFC也很好用的,基于对话框程序的话,也是拖拖拉拉控件
      

  3.   

    1-用C#做画面dll类2-注册生成的dll
    C:\Windows\Microsoft.NET\Framework\v4.0.30319>RegAsm.exe C:**\CSharpForm.dll /tlb3-在VC cpp文件里面加上
    #import "CSharpForm.tlb" no_namespace named_guids
    编译一下。4-调用
    interface和一些参数是C#类里面定义的     ICsharpInterface *cpi = NULL;
        
        CoInitialize(NULL);
        HRESULT hr = CoCreateInstance(CLSID_InterfaceImplementation,        
    NULL, CLSCTX_INPROC_SERVER,        IID_ICsharpInterface , (LPVOID*)&cpi);    if (FAILED(hr))    
    {        printf("Couldn't create the instance!... 0x%x\n", hr);
    }    
    else    
    {        
    /*
    std::string strVal = cpi->GetStr();
    */
            cpi->Release();        
        }    
    CoUninitialize();
      

  4.   

    技术上是可行的,但是一般这么做的人(或者团队中的几个人),应该是既精通C#也精通C++的。而不是既不怎么会C#,C++也是三角猫的人。
    就像我们用中文说话,但是一些专业术语用英文表达一样,这没有什么不好。但是如果你是中文也说不好,英文也不会写的那种,随心所欲地瞎写,那本质是完全不同的。
      

  5.   

    谢谢楼上的,看来我还是用MFC吧,当初也是图C#简单点,稍微懂一点