Iwao Dev

気付いたことをメモしています.

この画面は、簡易表示です

2014 / 1月

GeForce GT 630 に変更

T5400 のグラフィックボードを Quadro FX 570 から GeForce GT 630 に変更.
サウンドデバイスが見つからない状態になり,音が出なくなった.
セットアップ時だったか,ボードのサウンド機能を利用する様な表示があった様な?
音が出ないことはそれほど問題ないと思っていたが,Skype などが出来ない.
それとは別の要因だが CD ドライブが開かなくなってしまった.以前から調子が悪かった.
グラフィックのドライバを何とか入れ直し,設定などを見たが,特に設定はなさそう.
検索すると,BIOS の設定で回避できるとある.

Auto から On にして,再起動.
すると,音は出る様になったが,表示が…

さらに再起動して,それなりの動作となった.


  にほんブログ村 IT技術ブログへ


C2582

ちょっとわかりにくいエラーメッセージだったので,…
——————–構成: Read_3D – Win32 Debug——————–
コンパイル中…
c:\…\p_a_3ds.hxx(101) : error C2582: ‘operator ‘entry’ 関数は ” 内では使用できません。
cl.exe の実行エラー
Read_3D.exe – エラー 1、警告 0


MSDN では,
コンパイラ エラー C2582
‘identifier’ : 代入演算子 ‘operator =’ が、指定されたクラスに定義されていません。
 
指定されたクラスには、代入演算子 operator=() が定義されていません。
 
クラスを引数とする代入演算子を定義している場合は、コンパイラはデフォルトの代入演算子を生成しません。
代入演算子は、各クラスに対して明示的に定義しなければなりません。代入演算子は派生クラスに継承されません。


  にほんブログ村 IT技術ブログへ

  • Categories:

OCX x64

MFC を利用した x86 の ocx の 64 ビット化.


しばらくやってないので,Win XP 32 ビット環境の VC 6 で,スケルトンの作成から.
ActiveX Controls Inside Out を見ながら,スケルトンを作成.
そのままビルドして,ActiveX コントロール テスト コンテナ で,挿入してテスト.
OnDraw のEllipse を DrawText に書換え.

  void C????Ctrl::OnDraw(CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid)
  {
//   pdc->FillRect(rcBounds, CBrush::FromHandle((HBRUSH)GetStockObject(WHITE_BRUSH)));
//   pdc->Ellipse(rcBounds);
    v_tstring	buildMacros	= ::Debug_GetMacroCC_v() ;
    CString	macroStr	= ::String_Join(buildMacros,_T("\r\n")).c_str() ;
    CRect	rect = rcBounds ;
    pdc->DrawText(macroStr,rect,0) ;
    }

Debug_GetMacroCC_v は次の様なコード.

  inline	std::vector	Debug_GetMacroCC_v	(void)
  {
    std::vector	typeAry ;
    #ifdef	_WIN64
      typeAry.push_back(_T("_WIN64 ")) ;
    #elif	_WIN32
      typeAry.push_back(_T("_WIN32 ")) ;
    #endif
    // ...
    #ifdef	_MFC_VER
      typeAry.push_back(_T("_MFC_VER ")+::utot(_MFC_VER,16)+_T(" ")) ;
    #endif
    #ifdef	_UNICODE
      typeAry.push_back(_T("_UNICODE ")) ;
    #endif
    // ...
    return	typeAry ;
    }


今度は,Win 7 x64 環境で,VC 9 を利用しての確認.
「ActiveX コントロール テスト コンテナ」は,以前のバージョンとは異なり標準では存在しない.
検索するとサンプルにあるとのこと.
Win 7 環境には C:\…\VC2010Samples\C++\MFC\ole\TstCon があったので VC 10 でビルド.
VC 9 でスケルトンから作成して,OnDraw を同様に書換え.
また,構成マネージャを使用して x64 を追加.
それぞれの Release 版でビルド.
コントロールの登録は,管理者として起動した「コマンドプロンプト」で行っている.
それぞれの ocx のフォルダに移動し,regsvr32 ~.ocx として登録.
この時,ocx により?自動的に regsvr32 の 64 / 32 ビットそれぞれで登録されているみたい.

Excel 2010 で試すには,コントロールの挿入のために開発タブを有効にする必要がある.


  にほんブログ村 IT技術ブログへ

  • Categories:


    top

    %d人のブロガーが「いいね」をつけました。