タグ

mfcに関するdelegateのブックマーク (59)

  • Re[6]: MFC マルチスレッドについて

    分類:[C/C++] こんにちは、Jittaです。MFC のマルチ スレッドについて、教えてください。 UI を持つスレッドから、通信スレッドを起動しています*1。このとき、通信スレッドに CResizingDialog を継承したダイアログ クラスのオブジェクトを引き渡しています。 通信スレッドでは、通信の結果を‘ダイアログにあるリスト ビューへ書き込んでいます’。 また、‘ダイアログの公開フィールドにある、CObjArray を操作しています’。 MFC の知識がほとんど無いので尋ねたいのですが、 これらの(引用符で囲った)操作は、スレッド セーフでしょうか。 疑問に思う理由: .NET Framework では、Invoke メソッドを利用して、コントロールのもとになるウインドウ ハンドルを持つスレッドで行わなければならない。 MFC では、「ワーカー スレッド」と「ユーザー インタ

  • MFC – ぴぐノート

    前回、OpenCVを使って画像の回転や二値化などを行って動作確認をしました。 今回はMFCでダイアログベースのアプリケーションを作成し、ピクチャーコントロールにOpenCVで読み込んだ画像を表示させて …

  • MFCの基礎 - マルチスレッド

    概要 MFCアプリケーションにおいて、マルチスレッドを使用する方法について記述する。 作成手順 まず、クラスにワーカースレッド関数(静的)とワーカースレッド体の関数を追加する。 ワーカースレッド体の関数では、静的でないメンバ変数およびメンバ関数が使用できる。 ワーカースレッド関数では、静的でないメンバ変数およびメンバ関数が使用できないと考えている人がいるが、 下記のサンプルコードのようにすればクラスの関数はワーカースレッド関数にて行うことができる。 サンプルコード // CFileView.h class CFileView { private: CWinThread *m_pLoadXMLThread public: static UINT LoadXMLThreadFunc(void* pParam); // XMLファイル読み込み時のスレッド制御関数 void LoadXMLTh

  • TOP : FENIX-PC

    お知らせ 2022/8/3 Visual C++ 2022 を使用した初心者でもできるプログラミング!を開始いたします。 記事に関する Windows API などの詳細については、右上にある [ツリービュー] または上部 [メニュー] から閲覧できます。 記事の新規投稿には、関数の翻訳などに膨大な時間を必要とするため、思うように進んでないのが現状です。翻訳に誤りなどがあり間違った解釈をしてしまう場合が発生する可能性があることをご理解下さい。 関数の正確な認識を行ってる都合上、過去の記事の修正を頻繁に行っています。 新規記事を見られる場合、関連する関数などをさかのぼって閲覧することをお奨めします。

    TOP : FENIX-PC
  • 車輪のx発明 ~B.G's Blog~

    指定のファイルを読み込み、指定のコードページのマルチバイト文字列からワイド文字列に変換して、std::wstringオブジェクトに格納するReadMultiByteTextFileBinaryを作る。 Win32FileUtility.hは、 と書く。 Win32FileUtility.cppは、 と書く。 main.cppは、 と書く。 こうなる。こうなる。 Test/winapi/Win32FileUtility/ReadMultiByteTextFileBinary/src/Win32FileUtility at classic · bg1bgst333/Test · GitHub 指定のワイド文字列を指定のコードページのマルチバイト文字列に変換してファイルに書き込むWriteMultiByteTextFileBinaryを作る。 Win32FileUtility.hは、 と書く。

    車輪のx発明 ~B.G's Blog~
  • MFCフレームワークと闘え! | TAKABO SOFT

    ドット絵エディタ「EDGE2」、MIDI音楽編集ソフト「Domino」、楽曲などを配布している個人サイトです。 土曜日に書いたツールバードッキングで嫌な感じ事件ですが、無事(?)に解決いたしました。 当初は闘う前から負けていた(だってドッキング部分はいろいろなサイトで難解と言われていましたから)のですが、きよのさんの協力もあってやる気が出まして(笑)、駄目元でデバッグをしていったところ、それっぽい原因を見つけ出すことができました。 折角ですので、VC6.0を使ってどうやって問題を解決したかなどを簡単に書き記しておこうと思います。 さてさて、ドッキングしているツールバーをドラッグ&ドロップした際、ドロップした位置より下側にずれてドッキングしていまう、というのが今回の不具合です(詳しくは12日の日記を参照してください)。 なんとなく「ドロップしたあとのツールバー位置を決める処理」に不具合がある

    delegate
    delegate 2023/06/05
  • Windows 7 Native Development with Visual Studio 2010 -- Visual Studio Magazine

  • MFC マルチスレッド - MyMemoWikiOld

  • MFC マルチスレッドの使い方

    :::::::::::MFC マルチスレッドの使い方::::::::::: 重たいファイルの読み込み処理や変換など、いちいち待つ意味ないです。 エディタならその間も作業できなきゃいけません。 今回はMFCにてマルチスレッドを使う方法についてまとめます。 ということで SimpleConver に実際に導入した例をもとに、実装の詳細を示します。 まずは別スレッドにて行いたい関数を作ります。 次の例にならい、クラスに静的な関数(スレッド関数)とスレッド処理体の関数を追加しましょう。 スレッド処理体ではクラスの静的でないメンバ変数とか関数が使えます。 スレッド関数内では静的でない(static のつかない)メンバ変数や関数が 使えないと思っている人がいるようですが、そんなことないです。 今回のようにすれば、クラスの関数はどれでも別スレッドで行うことができます。 あとは注意事項として次のことを

  • MFC のプログラム名が日本語の場合の HTTP 通信のトラブル - 将棋プログラミング

    数年前に起きたトラブルである。 以前は、プログラム名に日語は使わなかったが、もう日語を使ってもいいだろうと思い、プログラム名に日語を使った。 実行 PC の OS が Windows 7 の場合、問題が無かったが、OS が Windows 10 にアップデイトされたところ、サーバとの通信に時々問題が起きるようになった。 時々、HTTP ステータス 503 (Service Unavailable) が返るようになった。 調べた結果、HTTP ヘッダの User-Agent: に日語のプログラム名が自動で設定され、それが原因だとわかった。 この場合も、サーバによって動作は異なる。また、今回のサーバも問題が無い時と問題が起きる場合があった。 Visual Studio 2005, 2010, 2013 で、この問題が起きることを確認した。 MFC の HTTP 通信では、CHttpCo

    MFC のプログラム名が日本語の場合の HTTP 通信のトラブル - 将棋プログラミング
    delegate
    delegate 2022/08/08
  • WinInet(MFC)を使ったhttpとhttps(自己証明書) - Qiita

    CInternetSession session; CHttpConnection *pConn = NULL; CString strServer, strObj, strHeader; INTERNET_PORT nPort; DWORD dwServiceType; CHttpFile *pFile = NULL; // ShiftJIS -> UTF-8 変換 CString cstrBody = "{}"; // Body部 CString cstrUtf8Body = SjistoUTF8(cstrBody); // URLを作成 CString cstrUrl = "http://localhost" // URL情報を解析 ::AfxParseURL(cstrUrl, dwServiceType, strServer, strObj, nPort); // ポート番号を設定

    WinInet(MFC)を使ったhttpとhttps(自己証明書) - Qiita
  • MFC入門1 最小限のMFCアプリ

    MFCの勉強をしつつ入門記事を書いていこうと思います。 今回は最小化、最大化、閉じるぐらいしか出来ない、最小限のアプリです。 MFCでは CFrameWndをそれぞれ継承したウィンドウ classと CWinAppを継承したアプリケーションclass の 2つのクラスが必要になります。 CFrameWndの派生クラスなどのメッセージに応答するクラスの 宣言ではDECLARE_MESSAGE_MAP()マクロが、 定義(cppファイル)ではBEGIN_MESSAGE_MAP(theClass, baseClass)マクロと END_MESSAGE_MAP()マクロが必要です。 DECLARE_MESSAGE_MAP()マクロは、内部で アクセス指定子をprotectedに変更するので注意が必要です。 CWindowで呼び出されているCreate()関数でウィンドウの作成 CAppのInitI

    MFC入門1 最小限のMFCアプリ
    delegate
    delegate 2022/07/28
  • embed window(glfwCreateWindow) as child to C++ MFC parent form

  • 床井研究室 - OpenGL 関係記事一覧

    一般 Windows でコンソールを出さない方法 トラックボール 押し出し とっても簡単なマルチテクスチャのサンプル Point Sprite を使ってみる 3D テクスチャ キューブマッピングで FBO を使ってみる シャドウマッピングで FBO を使ってみる トゥーンシェーディング GL_SEPARATE_SPECULAR_COLOR 丸い点を描く GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER 頂点配列 Vertex Buffer Object 半透明処理 Depth Peeling デプスバッファの表示と画面表示の保存 FBO を使ってデプスバッファを表示する デプスバッファの輪郭線抽出 屈折マッピング 分光現象 Xcode の Project Template とっても簡単なボクセル化 デプスバッファを使ったボクセル化 ゼブラパターンの映り込み SSAO

  • MFCプログラミング

    delegate
    delegate 2022/07/27
  • 小さい頃はエラ呼吸

    はじめに マイクロソフト社のMFC DLLの日語翻訳説明が機械翻訳すぎて言ってることが全然分からないので、google翻訳にしてみました。 docs.microsoft.com ここから導入部 A regular MFC DLL dynamically linked to MFC is a DLL that uses MFC internally, and the exported functions in the DLL can be called by either MFC or non-MFC executables. As the name describes, this kind of DLL is built using the dynamic-link library version of MFC (also known as the shared version of M

    小さい頃はエラ呼吸
    delegate
    delegate 2022/05/18
  • 古いMFCプロジェクトをVS2019で読み込む – // もちぶろ

    プロジェクト読み込み時に「afx~.h」系のヘッダファイルのロードでエラーが発生し、読み込みに失敗した。 →開いているVisual Studioを一度すべて閉じる。Visual Studio Installerを開き、「個別のコンポーネント」タブから次の2つのコンポーネントをインストールする。 1つ目:「最新の~ビルドツール用 C++ ATL (x86 および x64)」

  • CListCtrl - 車輪のx発明 ~B.G's Blog~

    CListCtrlは、リストコントロールを扱うクラス・・・。 CListCtrl クラス Win32でいうリストビュー(WC_LISTVIEW)のことだが、MFCにはCListViewというCListCtrlの機能を含む別のクラスがあるので、ここではリストコントロールと呼ぶ・・・。 を選択し、 このように配置・・・。 カラフルな項目が表示されてるが、あくまでもイメージサンプルであり、実際には項目を一つもセットしてないので、実行してもこれらの項目は表示されない・・・。 表示形式を表すViewプロパティがIconになっているが、 今回はレポートにする・・・。 するとこのような表形式になる・・・。 CListCtrlDlg.cppのOnInitDialogで、まずカラムヘッダを3つ挿入する・・・。 1つ目のカラムlvCol1に値をセットして、pListCtrl1->InsertColumnで0番

  • Windowsプログラミング(MFC編)

    delegate
    delegate 2021/11/08
  • WindowsとC++ vc.html

    WindowsC++ ■ C/C++ 関連 変数 printf scanf 引数を取得 extern static変数とstatic関数の作成 オブジェクト指向 配列の引数渡し メモリの解放 関数ポインタ テンプレート 算術関数 乱数 全角文字の扱い 構造体 共用体 動的なメモリの割り当て 演算子の宣言 goto文 列挙型 プリプロセッサ命令 現在時刻を取得する フレンド ファイル処理 ファイルの削除、名前変更、置換 ファイルの情報の取得 ファイルとフォルダの列挙 区切り文字による文字列の切り出し 名前空間 実行ファイルのパス 可変引数リスト メモ ■ バグを出さない為に... マルチスレッドや割り込みなどでの最適化の抑制 自動変数とメモリの領域 デストラクタはバーチャルにする アサーション newの失敗 その他の要因 クラッシュするプログラムの原因追及 ■ STL(Standa

    delegate
    delegate 2021/05/14