• ベストアンサー

WinAPIで任意のデータとデータの関連付け

STLのコンストラクタが呼び出される前にstd::mapのような機構を使いたいと考えております。 そこでmapのように、任意のデータとデータを関連付ける関数はWinAPIにはありますか? たとえば、 "Ptr1" , 0x11111111 "Ptr2" , 0x22222222 "Ptr3" , 0x33333333 というようなデータのセットをWindows上に記憶させ、 "Ptr2"という文字列を識別子にして0x22222222という値を取り出せるようにしたいのです。 できればレジストリは使いたくないです。

質問者が選んだベストアンサー

  • ベストアンサー
noname#160041
noname#160041
回答No.2

GetPropとSetPropでそれらしきことはできます。 ただし、Windowハンドルが必要になります。 http://msdn.microsoft.com/ja-jp/library/cc411066 http://msdn.microsoft.com/ja-jp/library/cc364724 http://msdn.microsoft.com/ja-jp/library/cc430245 デスクトップのWindowハンドルを使っとくと良いでしょう。 http://msdn.microsoft.com/ja-jp/library/cc364616.aspx SetProp(GetDesktopWindow(), "Ptr1" , 0x11111111); int* p = (int*)GetProp(GetDesktopWindow(), "Ptr1"); といった具合です。

その他の回答 (1)

  • hidebun
  • ベストアンサー率50% (92/181)
回答No.1

>STLのコンストラクタが呼び出される前にstd::mapのような機構を使いたい すみませんが、意味がわかりません。 std::mapではなぜダメなのでしょうか? >というようなデータのセットをWindows上に記憶させ、 ハードディスクドライブに、ということでしょうか? それとも、メモリ上にということでしょうか? Windows上に記憶させるということであれば、レジストリなのでは? >できればレジストリは使いたくないです。 実現したいことを補足してもらえないと、全く答えようがないというか。 一体、何をしたいのですか?細かいレベルではなくて、もう少し全体的な 話(これこれこういうアプリを作りたくて、このようなことを行うのに、 std::mapのような機能が必要だと思うが、など)をして下さい。

関連するQ&A