mfc-ml

2006年03月

31

[mfc 52058] Re: [mfc 52055] VC++6.0でspreadsheet11を使いたいのですが・・・


社本@ワックです。

> において、ダイアログ上にspreadsheet11を貼り付け、
> Excelのような動作をさせようと思っておりますが、
> 簡単なテストプログラムで自動生成されたソースでもコンパイルエラーになります。 


レスがついてないようなので。

spreadsheet11とは、EXCEL 2003のコンポーネントのことでしょうか?
自動生成されたソースとはどのようなソースでしょうか?
また、どのようなコンパイルエラーが発生しますか?


// 社本 明弘
// http://www.wac-jp.com/programmers/
// http://www.ailight.jp/blog/sha256/
// Microsoft MVP for VC++ (Oct 2003 - Oct 2006)
31

[mfc 52057] RE: 透過しているWMFの表示について

 渋木です。

> CImageを使ってWMFを表示するプログラムを作っているのですが、
> 白い部分(おそらく透過の部分)が黒く表示されてしまいます。
> プログラムは、以下のように書いているのですが、黒く表示されない
> ようにする方法はあるでしょうか。

 肝心の WMF を描画しているコードが無いのでよく分かりませんが、WMF の描画を行
う前にビットマップの全域を白で塗りつぶしておけばいいんじゃないでしょうか。

--
// 渋木宏明 (Hiroaki SHIBUKI)
// http://hidori.jp/
// Microsoft MVP for Visual C#
31

[mfc 52056] 透過しているWMFの表示について

いつもお世話になっております。
まつうら ひろみつと申します。

CImageを使ってWMFを表示するプログラムを作っているのですが、
白い部分(おそらく透過の部分)が黒く表示されてしまいます。
プログラムは、以下のように書いているのですが、黒く表示されない
ようにする方法はあるでしょうか。

お手数ですが、教えていただけると助かります。
よろしくお願いします。


 /*J 表示を行うビットマップ */
 CImage  m_Image;


/* イメージのロード */

/*J 以下ファイルの表示部分 */
  CPaintDC dc(m_hWnd);
  CDC dcImage;

  if (dcImage.CreateCompatibleDC(dc.m_hDC)) {
   if (!m_Image.IsNull()) {
        HBITMAP hBmpOld = dcImage.SelectBitmap((HBITMAP)m_Image);
        dc.BitBlt(0, 0, m_Image.GetWidth(), m_Image.GetHeight(), dcImage, 0,
0, SRCCOPY);
    }
  }

Hiromitsu Matsuura 
30

[mfc 52055] VC++6.0でspreadsheet11を使いたいのですが・・・

お世話になっております。中間と申します。

開発環境・本番環境
WindowsXP Professional Version2002 SP2
VC++6.0
Office2003

において、ダイアログ上にspreadsheet11を貼り付け、
Excelのような動作をさせようと思っておりますが、
簡単なテストプログラムで自動生成されたソースでもコンパイルエラーになります。
VC++6.0は、spreadsheet11をサポートしているのでしょうか?
または、バグがあるのでしょうか?
バグだとしたら何か回避策はあるのでしょうか?
ご存知の方がいらっしゃいましたら、教えて頂きたいと思います。

よろしくお願いいたします。
30

[mfc 52053] RE: [mfc 52050] Re: [mfc 52046] Re: [mfc 52045] Re: [mfc 52044] Re:MFCを使用しないDLLの呼び出し方について

どーも、松尾です。
outlookからの投稿になりますのでスレッドが切れてしまいますが、
ご了承ください。 
 
> 呼び出し側のプログラムアプリケーションクラスの構築のところで、
> _CrtDumpMemoryLeaks();
> を入れたところ、最初から問題のメモリが確保されたメッセージが出ています。

関数の使い方が不味いような気がしますけれど。
これって呼び出された時点で開放されていないメモリの一覧を出すだけなのでは?
プログラム終了時点で呼ばないと意味が無いと思いますけれど。

 
> 基本的な質問をしてきょうしゅくですが、
> 56番目とはどこから数えるんでしょうか?

単純にメモリ確保が走った回数だと思います。
{57} normal block at 0x00AF5BB8, 33 bytes long.
{56} normal block at 0x00AF5B50, 40 bytes long.

の最初の数字がそれですね。
記事検索
Amazon.co.jp
  • ライブドアブログ