1 名前:デフォルトの名無しさん mailto:sage [2008/10/31(金) 12:16:11 ] Visual C++入門者・初心者からの質問を、 お兄ちゃんお姉ちゃん達が優しく、時には厳しく回答してくれるスレッドです。 ■質問するにあたって ・エラーや警告のときはエラーメッセージを書きましょう。 ・開発環境も書きましょう、特にWindowsForm、MFC、Win32アプリケーションの区別。 ・できるだけ具体的に。 質問の仕方については次のページが大変参考になります。 www.hyuki.com/writing/techask.html ■回答するにあたって ・回答する場合はその答えに至るための「コツ」も書いてあげると良いでしょう。 (MSDNのどの項目だとか、何のキーワードでGoogleするとか) ・ネタや煽りは軽く流しましょう。 過去スレ、関連スレなどは>>2-5 辺り。
232 名前:デフォルトの名無しさん [2008/12/03(水) 20:24:26 ] すいません windowsXP SP2で visual c++ 2005 Express Editionを使っているんですが 以前のエラーのため、Windows Forms Designer Package ({7494682B-37A0-11D2-A273-00C04F8EF4FF}) 以前のエラーのため、Visual Studio Explorers and Designers Package ({8D8529D3-625D-4496-8354-3DAD630ECC1B}) 以前のエラーのため、Visual Studio Explorers and Designers Package ({8D8529D3-625D-4496-8354-3DAD630ECC1B}) 以前のエラーのため、Visual Studio Common IDE Package ({6E87CFAD-6C05-4ADF-9CD7-3B7943875B7C}) というようなエラーが出てしまいます コマンド プロンプトで 'VCExpress /resetskippkgs' を入力しろと出るので試しましたが無理でした 調べたところbeta版がどうこうとあるのですが、自分はそのようなものは入れていません beta版のアンインストーラーを使用しても、該当するものはありませんでした 何か解決策はないでしょうか?
233 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 10:44:16 ] そのエラーは何をする時に出るの?
234 名前:デフォルトの名無しさん [2008/12/06(土) 01:18:55 ] お願いします。 WinXP SP2でVisual c++ 2005 Express Editionです。 UNICODEのIniファイルの情報をGetPrivateProfileStringで取得しようと しているのですが、lpReturnedStringにはlpDefaultの値が入ってしまいます。 IniファイルがANSIのときはうまくいきます。 GetPrivateProfileStringの引数はワイド文字にしているつもりです。 意図的にGetPrivateProfileStringWにしてもダメでした。 UNICODEファイルの際の注意点などあるのでしょうか? ご教授ねがいます。
235 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 01:29:29 ] >>234 INI系の関数はAでもWでもファイルの中身はマルチバイト文字として扱われる。 そのおかげで、Aで書き込んでWで読み取るなんてことができるんだけどね。 もちろん、文字コードの自動判別なんてやっていない。
236 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 10:27:18 ] >>234 > UNICODEのIniファイル 拡張子がINIってだけで中身がUnicodeじゃあ、INIファイルとは呼べ ないシロモノだな。 自分で、CStdioFileクラスのCStdioFile::ReadString()/WriteString() なりを使って、1行ずつ読み込んで文字列処理するコードを書くしか ないな。(w
237 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 12:35:20 ] そうだったのか。 たしかにINIファイルって、ASCIIしか使わないけど……
238 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 13:08:53 ] > INIファイルって、ASCIIしか使わないけど…… んなこたぁない。シフトJISであれば漢字やカナ文字だって使える。 でなきゃ、漢字やカナ文字を含むパス名やファイル名の文字列保存に 使えない。
239 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 13:49:53 ] マジ?シフトJISなら良かったのか。 それは気がつかなかった。今度試してみよう。 ていうか、レジストリ弄りたくなくて、いまだにINIファイル使ってるんだよね。
240 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 14:34:14 ] Windowsフォルダに際限なくINIファイル作られるより、レジストリの方が ずっとマシだと思えるんだが? ログインユーザー単位で設定が分けら れるというメリットもあるし。 第一、レジストリなんて意識せずともWindowsのシステムでいじられ まくりだぞ。
241 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 14:37:53 ] >>239 Shift_JISというか、そこで使っているコードページの文字コード。 欧米ならWindows-1252だし、繁体中国語圏ならBig5という具合。 >>240 ファイルでもApplication Dataあたりに置けば、ユーザ別設定はできる。
242 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 15:03:55 ] >>241 > ファイルでもApplication Dataあたりに置けば、ユーザ別設定はできる。 MFCフレームワークのデフォルト処理を前提に書いてしまった。言われ れば、まぁ確かにそうだ。 ところで、複数インスタンス起動した アプリからiniファイルへの同時アクセスとかって、今は問題ないん だっけか?
243 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 16:50:51 ] たんなるアプリの設定データはWindowsフォルダなんかにつくらんだろ。 自フォルダにINIファイル作るなんて普通じゃないか?フリーソフトなんかは特に。 わざわざ選択肢減らす必要なんてないしケースバイケースでよかろう。
244 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 17:30:28 ] >自フォルダにINIファイル Program Filesに置いたらVistaで問題が出る。 All UsersのAppDataとかでどうか。
245 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 17:41:50 ] >>244 >Program Filesに置いたらVistaで問題が出る。 はじめやりずれーって思ったら他のユーザーでログインしたときを考えたら納得した
246 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 19:27:48 ] >>243 > たんなるアプリの設定データはWindowsフォルダなんかにつくらんだろ。 昔は作りまくりだったんで、レジストリが搭乗したんだが? 今もMFCでCWinApp::SetRegistryKey()呼ばないとiniファイルを使うけど、 iniファイルが作られるデフォルトの場所はWindowsフォルダだよ。 >>244 > All UsersのAppDataとかでどうか。 自分(現在のログインユーザー)用の「マイドキュメント」フォルダの パスはSHGetSpecialFolderLocation()で取得できるけど、これって取れる んだっけ? もしかして決め打ち? それはそれで問題な気もするが? なんて思ったら、 SHGetSpecialFolderLocation(hwndOwner,CSIDL_COMMON_APPDATA,...); でいけるのか。 知らない間にCSIDLずいぶん増えているな。 ttp://msdn.microsoft.com/en-us/library/bb762494(VS.85).aspx
247 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 19:30:24 ] 昔話がしたいだけか。
248 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 19:46:34 ] VistaでProgram Filesのデータを読み書きするのって各ユーザー毎に仮想フォルダ作って 勝手にやってくれんじゃなかったっけ? 具体的にはどういう風になんの? 正直Vistaなんて糞OS使った事もないから知らんが。
249 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 20:20:51 ] 全ユーザー共通のINIファイルじゃないとダメってソフトでも なければさほど問題はなさそうな気もする つかこれってINIファイルに限らず他のセーブデータにも 言える事だろ
250 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 23:21:36 ] 「Program Filesに置いたらVistaで問題が出る。」っていうのは、他の スレでも見たような気がするが、実際何がどう問題なのかわからん。 すくなくとも、exe本体が存在するProgram Files下のアプリケーション フォルダ内にiniファイルを作成して読み書きは問題なく動作している けどな。 Administrator権限以外じゃダメとかなら、Vistaに限らず2000やXP等でも 問題になりそうな気がするし、セキュリティ上、別のログインユーザーに iniファイル内容を見られると困るというなら、All Usersに置いても同じ だと思う。
251 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 23:40:23 ] 別のログインユーザに見られたら困る、じゃなくて 別のログインユーザから見られないから困るんでしょ。 Program FilesやHKLMに無駄に書き込むソフトなんざそもそもマルチユーザを前提としていないので これらの挙動はソフトとしては想定外なわけで。 あと、管理者権限を持つプロセスから呼ばれると仮想ストアじゃないとこから設定ファイル読みに行ってNotFoundとか。 なんにせよUAC程度で不具合出るようなソフトは単純に行儀悪いだけだと思う。
252 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 00:27:46 ] >>251 そうそ Program Filesにおいちゃうとアドミニ権限ないと 書き込めないし見れないんだよね なんでアドミニ権限ないユーザが起動すると落ちるソフトとか結構あったりする
253 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 00:35:26 ] 行儀が悪いのはむしろこういう勝手な事をOSにさせるMSだと思うが 別にユーザー毎の設定で問題ないアプリなら不具合にならないわけだし 結局の所はケースバイケースって事でしょ ゲームアプリのセーブデータなんかはプログラムフォルダ内に入れとかないと セーブデータ残したままアンインストールする場合、普段ユーザーが見ない所に ファイルが残るしな 「行儀がいい」と「頭が固い」を履き違えてるんじゃね
254 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 00:43:20 ] >>253 いや、権限によってはProgram Filesを見れないから アプリの起動自体できない 設定ファイルがないって感じで落ちる ケースバイケースじゃなくてこう作らないと駄目ってところまできてる
255 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 00:48:55 ] さすがにそれは設定ファイルが存在することを前提にプログラムを組む方がおかしい なかったらデフォルト値で動かすのが普通。
256 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 00:51:59 ] >>254 設定ファイルがないと動かないなんて作りになってるのは ProgramFilesだろうがなんだろうが終わってるだろ
257 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 00:59:36 ] >>256 仮にProgramFilesが駄目だったら今度どこに保存すんの?
258 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 01:06:21 ] Vistaは持ってないけどこの認識であってる? 1.ファイルを読むだけだったらProgram Filesから行われる 2.書き込みが発生した場合、バーチャルストアで行われる 3.一度書き込みが発生したファイルは、バーチャルストアで読み書きが行われる Program Filesから読めないとか、どこに保存するとか言ってる人がいるから混乱してきたが。 この認識が違うなら>>254 に詳しい説明をしてほしい
259 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 01:11:29 ] >>258 そんなのセキュリティのポリシーの設定で変わるじゃん 駄目にしてある会社だったら読み取りも駄目だろ
260 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 01:15:46 ] その場合ってそのユーザにアプリって起動できんの? インストールの設定も含めて
261 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 01:29:36 ] 仮にそういうセキュリティ設定になってたとしたら INIファイルどころかあらゆるセーブデータの読み書きができなくなるわけだから INIファイルをどうしようが結局同じことだと思うけど まあどうしても全てのユーザーで動作させたいんだったら全セーブデータを >>244 のようにするか、レジストリに全てぶっこむしかないだろうね アホ臭いとしか言いようがないが
262 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 01:45:39 ] でもきちんと対応するってならそれっきゃないってことだろうな まあ、業務でそういうところに当たらないとも限らないからちょっとメモっておこ 担当者がキチだと普通にこういうの要求されるよね
263 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 03:54:39 ] >>254 ファイルが読めないなら起動に必要なデータファイルはどこから読むんです?
264 名前:234 mailto:sage [2008/12/07(日) 04:26:59 ] 豚切り失礼します。 >>236 さん 遅くなりましたが、回答ありがとうございます。 そうですか。UNICODEはINIファイルとして使えないのですね。 勉強になりました。
265 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 12:46:44 ] >>258 3.が違う
266 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 16:07:48 ] >>265 どう違うの?
267 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 20:53:50 ] 言ってみたかっただけじゃね。
268 名前:デフォルトの名無しさん [2008/12/08(月) 01:31:32 ] CとC++の違いってヘッダがiostreamになって使う関数が違う以外にないの? こんなんでオブジェクト施行とか騒いじゃってるの?拍子抜けなんだけど
269 名前:デフォルトの名無しさん mailto:sage [2008/12/08(月) 01:38:10 ] クラス、テンプレート、多重定義、例外処理……、 オブジェクト指向に関係あるものないもの、CになくてC++にある機能なんていくらでもあるが。
270 名前:デフォルトの名無しさん mailto:sage [2008/12/08(月) 01:49:56 ] クラスなんて構造体に毛がはえたようなものしょぼいんだよはっきりいって
271 名前:デフォルトの名無しさん [2008/12/08(月) 02:18:40 ] 馬鹿野郎! それのおかげでインテリセンスの恩恵があるんだろうが!
272 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 00:47:26 ] C→C++の一番の利点は コードが見やすいこと、これに尽きるだろ C++に慣れるとCのでっかいコードは耐えられん クラス化したくてウズウズしてくる 変数途中で宣言したくなる
273 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 00:51:53 ] C言語の勉強やってからC++に移行したほうが良いだろうか それとも最初からC++から勉強しても問題ない?
274 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 00:57:11 ] >>258 バーチャルストアに書き込むのはマニフェストがない場合だけだよ。 マニフェストがあればあとは管理者権限への移行が成功すれば直接書くことになる。
275 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 01:19:02 ] >>273 いきなりC++でいいと思う。 共通する事柄はいずれにせよ学ぶことになるし、 Cで良く使うテクだけどC++ではあまり使わないのとか意外とあるし。
276 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 01:24:14 ] >>275 把握したありがっとう
277 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 03:21:41 ] >>274 つかそれって結局管理者権限で実行するってことじゃねーの? 他のシステムファイルからみとかで管理者権限が必要でマニフェストに組み込まれた アプリじゃなければ>>258 のようになるってことっしょ?
278 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 10:30:08 ] >>277 マニフェストがない場合、管理者権限でもバーチャルストア行き。
279 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 10:52:59 ] マニフェストがないという言い方は正しくない
280 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 12:44:06 ] 一連の流れをみててもどうもわかりにくいです。 人によって言ってる事が違うというか。 管理者、制限ユーザー、マニフェスト関連で正確な挙動に ついての詳細情報が掲載されてるサイトないですか? VistaだけでなくXPや2000での情報も欲しいです。
281 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 14:48:03 ] >>280 一次情報源としてMSDNライブラリなど 例えばここらへん。 msdn.microsoft.com/en-us/library/bb756883.aspx msdn.microsoft.com/en-us/library/bb756973.aspx msdn.microsoft.com/en-us/library/bb756996.aspx technet.microsoft.com/en-us/windows/aa905113.aspx
282 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 15:11:06 ] 日本語でおk
283 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 15:16:27 ] 初心者スレで英文持ち出してくるヤツは死んでいいと思うよ 日本と米で仕様が違うのもよくある事だしな
284 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 15:26:18 ] 英文にしか情報がないようなことを初心者スレで質問するヤツは死んでいいと思うよ
285 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 21:38:14 ] >>284 初心者なんだから分からんだろ。
286 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 21:50:21 ] 非標準言語のしか資料が無いと言うことが判っただけでも大きな進歩であり、 革新的な質問であったことは確定的に明らか。
287 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 22:55:05 ] 誰か日本語でわかりやすくまとめてくだちぃ
288 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 23:24:08 ] ホームエディションだと管理者か制限ユーザーのカテゴリわけだけで 細かい設定はないんだよな プロフェッショナルの管理者による厳しいセキュリティ設定まで考慮してもきりがないと思う どうやっても管理者次第で動かない設定にできるんだし XPホームエディションでProgramFilesに入れたアプリを制限ユーザーで動かしてみたけど 普通にINIファイルを含むセーブデータを読み書きできた Vistaでマニュフェストの指定なしだとこの読み書きがバーチャルストアになるってことか それを想定して動くつくりであればセーブデータもプログラムと同じフォルダでいいんじゃね
289 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 01:08:56 ] まぁ仮想ストアは救済策ってーか、MSお得意の泥臭い互換性の維持だからな。 多分将来的にはユーザーのデフォの権限を制限ユーザーにしたいんだろうが、 それVistaでやっちゃうとProgram Filesに書き込むアプリなだけで動かなくなるわけだし。 マニフェスト無しでほっとくのも止めやしないが、管理者権限のコマンドプロンプトやファイラから 起動したら別々の設定ファイルをうっかり作っちまうとかも起こりうるので、 requireAdministratorで起動毎にUACダイアログを出した方がいい。 そしてアプリのユーザーにダイアログをうざがられてAppDataに 書き込まざるを得なくなるというプレッシャーこそがUACの真意だとかなんとか。
290 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 02:03:25 ] かなりどうでもいい条件付けだな
291 名前:デフォルトの名無しさん [2008/12/10(水) 11:56:44 ] VS 2003からVS 2008にしてみました C++のソースファイルはUTF-8で書かれていて、VS 2003では概ね問題なくコンパイルできていました。 ところがVS 2008のcl.exeは、このソース内に定数として書かれた文字列を勝手にSJISに変換して内部処理するようです。これでは正常動作できません。 この余計な機能を、何とか避ける方法はないのでしょうか? 膨大な量があるので、今さらファイルをSJISに戻すとかすることは不可能なんです。
292 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 12:03:53 ] コードページは?
293 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 12:10:24 ] 普通にコマンドプロンプトを開いて作業しているので、932のシフトJISです。
294 名前:デフォルトの名無しさん [2008/12/10(水) 12:15:05 ] すいません、本当に簡単なことなのですが if(argc == 3){ if(argv[1] == L"-o"){ if((fp = fopen("argv[2]", "w")) == NULL){ printf("出力ファイルをオープンできません.\n"); exit(1); } fclose(fp); } この if(argv[1] == L"-o") の条件が通りません。 コマンドで test -o test1 のように打っても違うものとして認識しているようで・・・ 画面にプリントしてみると同じなのですが、Lをつけるとデータが違うものになってしまうのでしょうか?
295 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 12:16:52 ] chcpで変えてみては? つーか、UTF-8でダメな例が思いつかないな、再現可能なソース無いですか?
296 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 12:18:44 ] >>294 文字列の比較に直接 == は使えません。
297 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 12:29:10 ] >>291 コンパイルエラーなのか動作が変なのか エラーメッセージがあればそれを書いてもらうと何かわかるかもしれません >>294 argvの型はTCHARですか
298 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 12:39:28 ] またどこの言語からの転向者だろ VSつながりでVBかC#あたりか
299 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 12:40:19 ] template <typename Foo, typename Bar> class Baz : public Bar { なんたら void Qux( const Quux<Foo,Bar> & foobar ) {...}; }; class Bar { なんたら }; // (1) VC2008で上のをもう少し複雑に書くと Baz::Qux での引数の型 Quux<Foo,Bar> が (1) の Bar と解釈されてコンパイルエラーになってしまう GCCだと通るんだけどなあ
300 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 12:40:36 ] >"argv[2]" この書き方はPerlかPHPだろう
301 名前:デフォルトの名無しさん [2008/12/10(水) 12:52:34 ] もともとCとVBAをやってました >>296 やっぱりstrcmpを使わないとだめですか? >>297 int _tmain(int argc, _TCHAR* argv[]) こう宣言してます
302 名前:デフォルトの名無しさん [2008/12/10(水) 12:53:27 ] もともとCとVBAをやってました >>296 やっぱりstrcmpを使わないとだめですか? >>297 int _tmain(int argc, _TCHAR* argv[]) こう宣言してます
303 名前:デフォルトの名無しさん [2008/12/10(水) 12:57:44 ] >>302 はい。
304 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 12:59:15 ] if( _tcscmp(argv[1],"-o") == 0 ) { では
305 名前:デフォルトの名無しさん [2008/12/10(水) 13:00:32 ] if( _tcscmp(argv[1],_T("-o")) == 0 ) { では
306 名前:デフォルトの名無しさん [2008/12/10(水) 13:01:43 ] if (_tcsicmp(argv[1],_T("-o")) == 0) { では
307 名前:デフォルトの名無しさん [2008/12/10(水) 13:03:35 ] >>304 さんの方法でやってみたところ エラー 1 error C2664: 'wcscmp' : 2 番目の引数を 'const char [3]' から 'const wchar_t *' に変換できません。(新しい機能 ; ヘルプを参照) というようなことを言われました。 どうもこの変換できないというところが理解できないです。代入しているわけでもないのに何故?って感じです。
308 名前:デフォルトの名無しさん [2008/12/10(水) 13:04:55 ] #include "stdafx.h" #include "string.h" #include "stdlib.h" int _tmain(int argc, _TCHAR* argv[]) { FILE *fp; if(argc == 3){ if( _tcscmp(argv[1],"-o") == 0 ){ if((fp = fopen("argv[2]", "w")) == NULL){ printf("出力ファイルをオープンできません.\n"); exit(1); } fclose(fp); } else{ printf("USage :\n"); printf("-o : **********\n"); } } else{ printf("引数の数が違います"); } return 0; } これが全文です。
309 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 13:14:00 ] 通常 "-o" の文字リテラルは char で構成される 文字セットがユニコードの場合 _tsccmp は _wcscmp にマップされる _wcscmp が要求する型は const wchar_t * だからエラーになる _T マクロは文字セットにあわせてユニコードの場合には "-o" を L"-o" と変える L"-o" はワイド文字 wchar_t で構成されるリテラルだから通る すまん思いきり間違えた 304は俺
310 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 13:18:33 ] UNICODEに拘らなければANSI Cで十分なんだよな
311 名前:デフォルトの名無しさん [2008/12/10(水) 13:21:00 ] >>309 解決しました!ありがとうございます
312 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 13:47:31 ] >>291 で質問した者です 再現可能なソースを作っていて気がつきました。 chcp 65001やchcp 437としても動作が同じで、文字列リテラルが強制的にSJISに内部変換されていることが分かりました。 UTF-8のソースファイルなのですが、「BOM」を付けると、このような動作になるようです。 BOMを付けないUTF-8だと、warning C4819 が山ほど出て、化ける文字までありますが、何とかなりそうです。 今回作った下の再現プログラムも、BOMありのUTF-8と、BOM無しのUTF-8では、動作が違ってきます。 #include <iostream> int main() { std::cout << "項目" << std::endl; return 0; } 一応解決したことにします。ありがとうございました。
313 名前:デフォルトの名無しさん [2008/12/10(水) 15:35:09 ] すみません>>294 で質問したものですが、 同じソースで _tcscat(argv[2],L".txt"); という処理を入れ、作成ファイルをテキスト形式にしようと思ったのですが 出力されたファイルが、テキストではなくファイルで出力されてしまいます。 画面表示させるとちゃんと****.txt となっているのですが・・・
314 名前:デフォルトの名無しさん [2008/12/10(水) 15:49:13 ] >>313 はスルーしてください アホくさい間違いでしたので(汗
315 名前:デフォルトの名無しさん [2008/12/10(水) 22:29:54 ] Visual C++を使用していて、ちょっと困ってしまったので助けてください。 下記画像のようにスペース部分に色つき矢印やらドットやらが表示されて消えなくなってしまいました。 どこかでキーボード押し違えたみたいで・・ この設定の解除の仕方を分かる方いたら教えてください>< ↓ imepita.jp/20081210/770880
316 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 22:38:27 ] メニュー > ヘルプのキーボード何とかに一覧がある
317 名前:552 [2008/12/10(水) 23:45:14 ] ヘルプで見ても、そもそもコレが何なのか解らないので検索できないので 教えていただけませんか?
318 名前:552 [2008/12/11(木) 00:19:36 ] 質問に答えてくれなかったからってこんなこと言うのもなんだけど なんか、プログラマーって陰湿な性格の人が多いよね。 解るんなら教えてくれればいいじゃん。初心者用のスレだった気がするけど。 ついでに、編集→詳細→スペースの表示で自己解決しました。 だれも教えてくれんかった。
319 名前:デフォルトの名無しさん [2008/12/11(木) 00:47:38 ] 今MIDIファイルを開くっていうプログラムを作りたいのですが、 よろしければ教えてください。 バージョンはVC++2005 AEです。
320 名前:319 [2008/12/11(木) 00:53:28 ] 319ですがGETFILE関数を使いたいです。 よろしくお願いします。
321 名前:デフォルトの名無しさん mailto:sage [2008/12/11(木) 02:15:04 ] >>318 君が質問したのは3、4時間前だろ? 誰もが同じスレをずっと監視してサポートセンターのように対応してくれるとでも思ってんのか? 自分で解決したならそれでいいし、自分で色々やってもできなかったらまた質問すりゃいいだろ 陰湿なのはちょっとレスがない程度でふてくされる君の思考回路だよ
322 名前:デフォルトの名無しさん mailto:sage [2008/12/11(木) 02:29:37 ] >>318 オマエみたいなパーデンネンを弾くために、みな時間置いてから答えるようにしてるからね。 ゴクローサン。
323 名前:デフォルトの名無しさん mailto:sage [2008/12/11(木) 07:33:14 ] >>315 [編集]→[詳細]→[スペースの表示]
324 名前:デフォルトの名無しさん mailto:sage [2008/12/11(木) 09:53:49 ] >>318 つーかその質問、定期的に出るんでうんざりなんだけど。 過去レス調べることもできないのかよ。 あと質問なんか1日くらい待てや、答える人が24時間張り付いてるわけじゃないぞ。
325 名前:デフォルトの名無しさん [2008/12/11(木) 10:10:52 ] こんにちわ。Visual C++でOPENGLを用いてゲームを作ろうと思うのですが、 ウィンドウを振動させるやり方がわかりません。。 何かコマンドややり方があるのならアドバイスください。よろしくお願いします。 ※JAVASCRIPTでウィンドウを振動させるみたいな感じです。
326 名前:デフォルトの名無しさん [2008/12/11(木) 10:18:59 ] >>325 SetWindowPos APIとrand関数を使え
327 名前:デフォルトの名無しさん mailto:sage [2008/12/11(木) 10:28:02 ] もの凄く気軽に「こんなソフトありませんか?」 pc11.2ch.net/test/read.cgi/software/1218808744/331 331 名前:名無しさん@お腹いっぱい。[] 投稿日:2008/12/11(木) 09:50:07 ID:mvBU1EDM0 こんにちわ。 アクティブウィンドウを振動させるようなフリーソフトってありますか? OPENGLで実験中にウィンドウを揺らしたいのですが・・・コマンドも分からないし、出来ないので外部のツールで強引にしようかと。。 よろしくお願いします。
328 名前:デフォルトの名無しさん mailto:sage [2008/12/11(木) 10:45:36 ] >>315 Ctrl+R、 Ctrl+Wを続けて入力
329 名前:デフォルトの名無しさん mailto:sage [2008/12/11(木) 10:58:16 ] >318 試験勉強みたいに頭の中に全部記憶する必要ない。 というか情報量多すぎるからその都度自分で調べて解決していかないとだめ。 初心者の場合はどうやって調べたらいいかわからないから 調べ方を教えてあげるのが重要。 答えだけ教えたんじゃ、いつまでたっても自分で調べられようにならない。
330 名前:M [2008/12/11(木) 11:35:21 ] 今、VC++でMFCを用いたプログラムを作成中で、そのプログラムでRS232C通信を行いたいのですが、RS232c通信のプログラムの部分だけAPIを用いて記述したいのですがどのようにすればいいのでしょうか? 方法があれば教えてください。お願いします。
331 名前:デフォルトの名無しさん [2008/12/11(木) 11:42:17 ] >>330 ここなんかどうだろ? www.ee.fukui-nct.ac.jp/~yoneda/text/other/C/A_06.htm
332 名前:デフォルトの名無しさん [2008/12/11(木) 11:43:59 ] >>326 2つともよく分からないまま検索したらMOVEWinfowというのもあるみたいで、if関数を用いて頻繁に座標をずらし振動させることにしました。 こんなんでいいのかな?? マルチすいません。ありがとうございます。