◀ANSI版開発トップへ
  • 4921 WSHのCoCreateInstance
    • 4923 Re:WSHのCoCreateInstance
      • 4927 Re2:WSHのCoCreateInstance
        • 4928 Re3:WSHのCoCreateInstance
          • 4930 Re4:WSHのCoCreateInstance
  • [4921] WSHのCoCreateInstance AC 2007年07月10日 21:18

    の前にCoInitializeがないように見えるのは私だけ~?
    • [4923] Re:WSHのCoCreateInstance ryoji 2007年07月10日 23:39

      > の前にCoInitializeがないように見えるのは私だけ~?
      ああ、SHBrowseForFolderの前にもCoInitializeが無いことに気付いているのはきっと私だけではないはず。(^^;;;
      いちおう、CEditViewの生成に伴うCDropTargetの生成でOleInitialize()が1度だけ実行されるようになってるみたいなんですが...
      これって、COM共通の処理なのでCOMを使う度に個別に呼び出さなくても起動時に1度だけやっておけば十分ですよね?
      COM全般用の1度きりの実行がCDropTargetクラスの中で、っていうのは、まぁ、あんまりスマートには見えないですね。
      CDropTargetからも抜いてしまってWinMain()にでも持って行ったほうがすっきりするかしら?
      • [4927] Re2:WSHのCoCreateInstance AC 2007年07月11日 23:27

        DropTargetではOleUninitializeもあるのでだめなんですよね、これが。
        スレッド毎に必要なんだからWinMainでやっちゃえばって感じです。
        • [4928] Re3:WSHのCoCreateInstance ryoji 2007年07月12日 12:06

          ▼ ACさん
          > DropTargetではOleUninitializeもあるのでだめなんですよね、これが。
          だめなんですか(´・ω・`)?
          そのOleUninitialize()はWinMain()を抜ける直前にしか実行されないと思うのだけど...、違う?
          • [4930] Re4:WSHのCoCreateInstance AC 2007年07月14日 09:30

            ▼ ryojiさん
            DropTargetのOleInitializeはDropTargetやりたいからでそ?
            そこで他のCoInitializeもできてるのはバグの偶然
            本来の目的じゃないじゃん。