VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 257|回复: 2

动态链接库(DLL)初始化例程失败。

[复制链接]
45_avatar_middle
最佳答案
0 
在线会员 发表于 2020-1-6 17:29:50 | 显示全部楼层 |阅读模式
还是上周的老问题,cef封装成动态库,图示是导出函数,显示加载getlasterror的返回值是1114,但是完全不知道错在哪里,我把代码InitInstance和OnitDialog里的代码贴上麻烦大佬们帮我看看是什么问题。
BOOL CCefMfcDemoApp::InitInstance()
{
        INITCOMMONCONTROLSEX InitCtrls;
        InitCtrls.dwSize = sizeof(InitCtrls);
        // 将它设置为包括所有要在应用程序中使用的
        // 公共控件类。
        InitCtrls.dwICC = ICC_WIN95_CLASSES;
        InitCommonControlsEx(&InitCtrls);

        CWinApp::InitInstance();

CShellManager *pShellManager = new CShellManager;
CMFCVisualManager::SetDefaultManager(RUNTIME_CLASS(CMFCVisualManagerWindows));
SetRegistryKey(_T("应用程序向导生成的本地应用程序"));
if (pShellManager != NULL)
        {
                delete pShellManager;
        }

        // 由于对话框已关闭,所以将返回 FALSE 以便退出应用程序,
        //  而不是启动应用程序的消息泵。
        return FALSE;
}

BOOL CefMfcDemoDlg::OnInitDialog()
{
        CDialogEx::OnInitDialog();

        // 设置此对话框的图标。  当应用程序主窗口不是对话框时,框架将自动
        //  执行此操作
        SetIcon(m_hIcon, TRUE);                        // 设置大图标
        SetIcon(m_hIcon, FALSE);                // 设置小图标

        // TODO:  在此添加额外的初始化代码

        CefRefPtr<CSimpleClient> client(new CSimpleClient());
        m_simpleClient = client;

        CefRefPtr<ClientAppRender> app(new ClientAppRender());


        CefSettings settings;
        CefSettingsTraits::init(&settings);
        settings.multi_threaded_message_loop = true;
        settings.remote_debugging_port = 8088;//如果不定义,则不能运行调试工具
        settings.single_process = false;

        CefMainArgs mainArgs;

        CefRefPtr<CefApp> cefApp;
        cefApp = app;

        CefInitialize(mainArgs, settings, cefApp, NULL);

        RECT rect;
        GetClientRect(&rect);
        RECT rectnew = rect;
        rectnew.top = rect.top + 50;
        rectnew.bottom = rect.bottom;
        rectnew.left = rect.left;
        rectnew.right = rect.right;

        CefWindowInfo winInfo;
        winInfo.SetAsChild(GetSafeHwnd(), rectnew);

        CefRefPtr<CefSetCookieCallback> callback = NULL;
        std::wstring username_key = L"Username"; //cookie的key
        std::wstring username_value = L"xiaonaiquan";//cookie的value
        std::wstring domain = L"csdn.net";

        CefRefPtr<CefCookieManager> manager = CefCookieManager::GetGlobalManager(nullptr);
        CefCookie cookie;
        CefString(&cookie.name).FromWString(username_key.c_str());
        CefString(&cookie.value).FromWString(username_value.c_str());
        CefString(&cookie.domain).FromWString(domain.c_str());
        CefString(&cookie.path).FromASCII("/");
        cookie.has_expires = false;

        domain = L"https://" + domain;
        CefPostTask(TID_IO, NewCefRunnableMethod(manager.get(), &CefCookieManager::SetCookie, CefString(domain.c_str()), cookie, callback));

        CefBrowserSettings browserSettings;
        CefBrowserHost::CreateBrowser(winInfo, m_simpleClient, domain.c_str(), browserSettings, NULL);

        return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE
}
非常感谢大佬们了
微信截图_20200106172643.png
微信截图_20200106172502.png




上一篇:winhttp怎么访问https网址
下一篇:求助
01_avatar_middle
最佳答案
39 
online_admins 发表于 2020-1-6 22:22:57 | 显示全部楼层
path 中的路径不应该是双反斜线吗?\\
45_avatar_middle
最佳答案
0 
ico_lz  楼主| 发表于 2020-1-7 08:37:40 | 显示全部楼层
admin 发表于 2020-1-6 22:22
path 中的路径不应该是双反斜线吗?\\

跟那个没关系那是设置查找的相对路径,下面写的是dll的绝对路径,上面那个没删掉
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号 )|网站地图wx_jqr

GMT+8, 2020-10-25 16:14

Powered by CcTry.CoM

© 2009-2020 cctry.com

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