• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:リストコントローラについて)

リストコントローラについての問題

taka_tetsuの回答

  • ベストアンサー
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.3

>DWORD kind; >INT size = sizeof(INT); >INT colWidth; >::RegQueryValueEx(hKey,"Column0",NULL, &kind, (BYTE*)&colWidth, &size)); 読み込むところも、とりあえず上のコードの部分は問題なさ送ですね。キーのopenがないんでそっちはわかりませんが。 ということで、順番に調査するしかなさそうですね。 まず、レジストリに書かれた値がおかしいということから、 「レジストリに値を書く処理は動作している。」と推定できます。 では、値が不正になるタイミングはどこなのかというと、 1.カラム幅の取得 2.レジストリの値の書き込み 3.レジストリの値の読み込み(ただし、アプリケーション終了時に無条件にカラム幅を書き込む処理が組まれているとき) 3.絡む幅の設定(ただし、アプリケーション終了時に無条件にカラム幅を書き込む処理が組まれているとき) のどれかと考えられます。 上記の処理が正しく行われているかを戻り値等を確認していくしかないでしょう。 ASSERTマクロを利用するのも手だと。 #動きがおかしいといって聞く前に、まず戻り値くらいは見ましょうね。あとはWinAPIを使うのでしたらGetLastError()の値も。

関連するQ&A

  • ListViewにSETしたファイル名からファイルパス取得方法

    今、ファイル名変換プログラムを作成しています。 そこで、ドラッグ&ドロップまたはフォルダ参照ダイアログから、 ファイルステータスをリストビューにセットしました。 (ファイル名)EX) XXXX.txt #その時、ファイルパスは取得できています。 その後、実行する時にリストビューから ファイル名は、GetItemTextで取得できました。 しかし、ファイルパスは取得できません。 ファイル名だけから、ファイルパスを取得するには、 どのようにしたら良いのでしょうか?? ファイル名の変更は、CFileDialog::Renameで考えているので、。。 それとも、他に良い方法はございますでしょうか? また、構造体かなんか定義して、 リストビューへSETする時に構造体にパスを保存し、 実行時に参照して処理すべきでしょうか? ただ、リストビューで選択し「DEL」ボタンで、 削除できるようしてあるので、 この方法は、効率が悪いように思えて・・・ 環境は、Win2000、VC++6.0、MFCで作成しています。 以上、ご教授ください!

  • フォルダ指定

    VC++6.0のMFCを使ってます。 FileDialogクラスで 例えば CFileDialog a(TRUE,"","*.*"); とするとコンピューター上のファイルを選択できます。 しかしフォルダが選択できません。このような参照からフォルダを 選択したいのですが何か方法ありますでしょうか

  • プレイステーション2のコントローラ1が動作しない

    しばらく押し入れに眠っていたプレイステーション2を久々にだしてきて、ゲームDVDをいれて起動できるかためしてみました。 最初、コントローラ1の端子にコントローラを差し込んで、ゲームDVDを入れてみましたが、そのままゲームは起動せず、「ブラウザ」と「ディスク」の選択画面がでました。 どちらを選択しようにもコントローラの操作は画面には反映しない状態でした。 次に、コントローラ2の端子にコントローラを差し込んで、ゲームDVDを入れてみると、同じくそのままゲームは起動しないのですが、「ブラウザ」と「ディスク」の選択操作はできるようなので、「ディスク」を選択すると、ゲームのオープニングが始まります。 ゲームは、私が好きだった「メタルギアソリッド2」と「メタルギアソリッド3」なのですが、これらのゲームでは、コントローラ2端子に差し込んだ状態で、ゲームスタートはできないようでした。 質問1 コントローラ1端子が使えないにしろ、コントローラ2でゲームはできるのでしょうか? (一人用ゲームができないということですかね?) 質問2 コントローラ1端子だけを交換したら使えるようになるのでしょうか? ご回答よろしくおねがいいたします。

  • Wiiのコントローラーについて

    こんにちわ。 Wiiのコーントローラーについてお伺いしたいのです。 昨日、初めてコントローラーを両手で使用するゲームをしたのですが、 最初は何の問題もなくゲームをプレイすることが出来ました。 ただ、一度電源を落として時間を置いてトライしてみると、 新しく購入した方のコントローラーが反応しません。 ホームボタンからまたコントローラーの設定をし直しました。 Wiiの場合、コントローラーを2つ使用して遊ぶ場合、 毎回ゲーム起動時に設定を行わなければいけませんか?

  • リストのプリントアウト

    フォルダ内の多数のデータをリストでプリントアウトをする時、画面をプリントスクリーンのボタンを押してペイントを起動させ貼り付けて、出力していますが、フォルダーのファイルのリストを簡単にプリントアウトできる方法があれば教えてください

  • PS3コントローラーの割り当てを1にしたい

    普通の純正コントローラーが割り当て1にできません。 本体に2つあるUSB差込口の左に普通のプレステ純正コントーローラ、右に格ゲー用のスティックがつないであります。 で、プレステ起動時、いつも純正コントローラーのほうがききません。格ゲースティックの方しかききません。 PSボタンを押せば、きくようになるのですが、更にその後、ゲームを起動すると、やはり純正コントローラーのほうは全く操作できず、PSボタン長押し→コントローラー設定→コントローラー割り当て とやって数字を2から1に変えないといけません。 すごく面倒です。 プレステ起動時の画面 設定→周辺機器設定 →コントローラの割り当て  から割り当てを1にしても プレステを再起動した時にはその設定は忘れられていて、また純正コントローラーのほうが2になっています。 純正コントローラーのほうを常に1にして起動するにはどうしたらいいでしょうか?

  • PS3のコントローラーが動きません。

    PS3のコントローラーが動きません。 PS3で、PS1のソフト(FF8)をやろうと思っているんですが、 タイトル画面から先に進めません。 コントローラーのPSボタンを押すと、コントローラーの設定等画面が出て、充電中の表示も出ます。 その画面の時には、十字ボタンやスティック、○×ボタン等も反応するのですが、 タイトル画面に戻して、NEW GAMEを選択しようと、十字ボタンやスティックを押しても まったく反応しません。 PS3で、PS1のソフトは使えないのでしょうか。 どういうことか、分かる方はおられますか。

  • ファイルダイアログでのファイルの複数選択について

    VC++6.0でプログラムをしているのですが、CFileDialogクラスのコモンダイアログでファイルを開くときに、ファイルを複数選択できるようにしています。 しかし、試してみると14枚までしか開くことができません。プログラムは以下のとおりです。 CFileDialog dlg(TRUE, "bmp", "*.bmp", OFN_ALLOWMULTISELECT); if (dlg.DoModal() != IDOK) { return; } ファイルを15枚以上選択するとif文の中のreturnに入って関数を抜けてしまいます。原因が何なのか分かる方教えてください。

  • PCにPS4コントローラーを繋いでも認識されない

    題の通りですが、PCにPS4コントローラーを接続しても認識されません。 以前までは使えていたのですが、久しぶりに使おうと思ったところ、コンパネのデバイスに表示されなくなっていました。 ケーブルを抜き差しすると一瞬だけオレンジ色のランプが灯るし、PSボタンを押せばPS4が起動して正常にコントローラーとして使えます。 ですが以前使用していた時はPCにケーブルを刺していればPSボタンを押しても反応しない(PS4が起動しない)だったような気がします。 これはケーブルの問題でしょうか?コントローラーの問題でしょうか? 解決策がありましたらぜひご教授お願い致します。

  • VB6でレジストリファイルをインポートするには?

    ○○.regというファイル(レジストリファイル)を開こうとすると、「レジストリに追加しますか?」というメッセージが現れますが、 VB6でregファイルを開き、この状態にしたいです。 初めは安易にshell(~\○○.reg)でいけるのかと思ったらエラーになってしまいました。 どうすればいいのでしょうか・・・?? あと、ちょっと気になっているのですが、レジストをインポートしても直後には反映されず、再ログイン時等に反映されますが、直後に反映されるため、何かのexeファイルが動いているんですか? 実際にデスクトップの壁紙等もプロパティを開いて変更したら直後に反映されているので、あのOKボタンを押すことで何かが起動しているように思うのですが・・・