MFC中多文件ActiveX建立子視窗
最近做了一個ActiveX控制元件 , 用於同時開啟多個文件. 並提供了一個介面: OpenDocument( filename) 供外部程式呼叫;
在應用程式中, 建立一個Dialog的對話方塊, 並加入了這個ActiveX. 然後啟動一個執行緒定時掃描資料夾, 並呼叫OpenDocument介面在ActiveX中開啟. 然而, 發現Activex在建立子視窗時, 始終失敗,經過除錯發現是SendMessage( ..WM_MDICREATE ..)時建立失敗,初步估計是傳送訊息後, 無法獲取頂層的父視窗(Dialog)的控制代碼.
現在的方案是使用訊息機制, 當線上程中掃描到檔案時, 加入到一個檔案列表中, 併發送一訊息. 而在訊息處理函式中, 則呼叫ActiveX的OpenDocument開啟檔案.
經過討論,覺得有可能是因為工作執行緒和GUI執行緒之間的區別導致的.
相關推薦
MFC中多文件ActiveX建立子視窗
最近做了一個ActiveX控制元件 , 用於同時開啟多個文件. 並提供了一個介面: OpenDocument( filename) 供外部程式呼叫; 在應用程式中, 建立一個Dialog的對話方塊, 並加入了這個Ac
MongoDB中Bson文件的建立
MongoDB中儲存Bson文件的方式 MongoDB中以bson的資料格式儲存文件,C驅動程式使用LibsBon建立BSON文件。構建bson文件的主要方式如下:附加關鍵值對,使
mongoDB指令碼中對於文件的建立更新以及刪除操作
mongodb由C++寫就,其名字來自humongous這個單詞的中間部分,從名字可見其野心所在就是海量資料的處理。關於它的一個最簡潔描述為:scalable, high-performance, open source, schema-free, document-orie
去掉MFC多文件程式中開啟程式就建立一個新文件的功能
當我們建立一個MFC多文件程式後,直接編譯執行會發現程式會自動建立一個空白的文件,如果我們不想要這個功能的話,可以這樣做: 在App類的InitInstance()中加上下面的程式碼: cmdInfo.m_nShellCommand = CCommandLineInfo::FileNothi
MFC多文件(二):文件中獲取檢視指標
多文件系列 MFC多文件(一):檢視中獲取文件指標 MFC多文件(二):文件中獲取檢視指標 MFC多文件(三):文件與檢視繫結 問題 文件與檢視繫結後,在文件中如何獲取檢視指標? 解決方法 1、NaviMarkDo
MFC多文件(一):檢視中獲取文件指標
多文件系列 MFC多文件(一):檢視中獲取文件指標 MFC多文件(二):文件中獲取檢視指標 MFC多文件(三):文件與檢視繫結 問題 文件與檢視繫結後,在檢視中如何獲取文件指標? 新建MFC多文件工程(命名為Test),自動生成了一個C
MFC多文件中opencv處理影象開啟、儲存
需要在C**Doc和C**View中進行相應修改 影象開啟: Doc.cpp中: BOOL CCVMFCDoc::Load(IplImage** pp, LPCTSTR csFilename) { IplImage* pImg=NULL; pImg = cvLoa
MFC 多文件中同時開啟多個文件
MFC多文件中的開啟繼承自CWinAppEx中的函式OnFileOpen(),這一點在CXXX.cpp中可以看到。比如如下: // CCVMFCApp BEGIN_MESSAGE_MAP(CCVMFCApp, CWinAppEx) ON_COMMAND(ID_APP_
MATLAB檢查指定路徑中的子文件夾中的文件名中是否帶有空格
atl num 換行 pre col .com 輸出 size 文件的 測試文件夾為: clear;close all;clc; %% %程序實現的功能 %檢查指定路徑中的子文件夾中的文件名中是否帶有空格,並去掉文件名中的空格 %% %程序中用到
C++工程文件夾中的bin和obj文件夾有何用處?(補充多文件結構)
binary 實現 頭文件 整合 推斷 pos 兩個 對象 bject 博主在使用Code::Blocks創建一個工程之後,正準備新建一個頭文件,細心的博主發現,在工程文件夾中有兩個子文件夾,分別是bin和obj。好奇心驅使下,想知道這兩個文件夾用來幹嘛的,網上搜了下,整合
MFC多文件(三):文件與檢視繫結
多文件系列 MFC多文件(一):檢視中獲取文件指標 MFC多文件(二):文件中獲取檢視指標 MFC多文件(三):文件與檢視繫結 問題 如題。 解決方法: 1、MFC多文件工程,手動新增CNaviM
MFC 多文件分割檢視
剛開始以為在CMainFrame類的裡面新建分割檢視時一直報錯,後來才發現需要在CChildFrame裡,在這個地方折騰了一個晚上也沒有搞明白,後來看到InitInstance裡面的程式碼才明白,檢視是
如何得到MFC多文件程式中子選項卡(Tab型別)的序號
MFC多文件程式開啟多個子文件時,每個試圖都是一個選項卡,當我們點選一個選項卡啟用它時,如何知道我們啟用的是哪一個子選項卡? 方法:在主框架視窗CMainFrame類中新增訊息處理AFX_WM_CHANGING_ACTIVE_TAB mainfrm.h中: afx_msg LRESULT
MFC在單文件程式中新增最近開啟檔案.
預設的MFC單文件程式可以支援最近的檔案列表,但是它卻不一定是我們需要的,因此我在這裡總結出手動控制的方法,以備不時之需。 預設的最近檔案列表是通過MRU file list來實現的,它通過將最近開啟的檔案寫入登錄檔,然後讀取到選單上實現的。這一切預設都是通過開啟和儲存
MFC 多文件原始碼分析1
新增模板在複寫的CWinApp::InitInstance()函式中新增下面程式碼CMultiDocTemplate* pDocTemplate; pDocTemplate = new CMultiDocTemplate( IDR_SMARTTTYPE, RUNTIME_
MFC框架介面開發(三):多文件介面
介紹 多文件介面中,一個主框架內可以有多個子框架。每個子框架可以看成是一個單文件的主框架。 例項 1.建立一個多文件程式,去掉文件/檢視框架支援; 2.新建一個檢視類,作為每個子框架視窗將要顯示的檢視: class CMainView:pu
MDI多文件模板中tab切換事件訊息處理定義
1.標頭檔案定義 afx_msg LRESULT OnActivateTabChanged(WPARAM,LPARAM); 2.定義訊息ON_REGISTERED_MESSAGE(AFX_WM_CHANGE_ACTIVE_TAB,&CMainFrame:
node中使用mongoDB定義文件並建立索引檢視的解決方法
基於nodeJS建立一個Express站點後,需要連線MongoDB資料庫,此時需要先定義文件,再建立索引(index)檢視,使資料庫的內容能夠展示在網站中。對於怎麼建立Express站點,怎麼連線到MongoDB庫,網上有很多相關資料。 首先定義文
C#-Mdi多文件視窗及其子視窗的排列 ---ShinePans
MdiLayout列舉成員及說明 Casecade s所有Mdi層疊在父視窗 TileHorizontal 水平平鋪 TitleVertical 垂直平鋪 Form1.cs (mdi) using System; using System.Collections.Gen
.NetCore上傳多文件的幾種示例
file 上傳文件 multiple 本章和大家分享的是.NetCore的MVC框架上傳文件的示例,主要講的內容有:form方式提交上傳,ajax上傳,ajax提交+上傳進度效果,Task並行處理+ajax提交+上傳進度,相信當你讀完文章內容後能後好的收獲,如果可以不妨點個贊;由於昨天電腦沒電了,