ys memos

Blog

Visual Studio の備忘録


vc++

2020/06/22

VisualStudioを使う必要があるので、そこで知ったことを逐次メモしておくことにした。ガチ初心者なので、同じ境遇の方の役に立ったら嬉しい。


「デバッグ実行→停止」をしても何も起こらない。 ↓ 「停止」ボタンではなく「中断」ボタンを押したら原因がわかった。 xxx.dllが足りないようであった。 「中断」した時に出てきた画面をぽちぽちしてたら進んだ。


パスを通す必要がある。パスとは、ライブラリがどこに置いてあるのかを教えるものだと解釈している。 以下に、パスを指定する。C¥…¥…みたいなやつ!

デバッグ → …のプロパティ → C/C++ → 全般 → 追加のインクルードディレクトリ → (パスを追加)
デバッグ → …のプロパティ → リンカー → 全般 → 追加のインクルードディレクトリ → (パスを追加)

通常、以下で除去可能のようである。

デバッグ → …のプロパティ → 構成プロパティ → 詳細 → 文字セット → 「マルチバイト文字セットを使用する」

私の場合は、これだけではエラーを除去できなかった。 そこで、該当コードの文字化け前のものを別のエディタで開いたところ、文字化けしないことが確認されたので、そちらから手動でコピペしたらうまく動作した。

原因を自分なりに考えたところ、「文字化けした状態を保存してしまったために適切な文字コードで読み込めなくなった」のかなと思った。


これにかんして、エラ〜コードのページへ飛んでも、解消方法がイマイチわからなかった。 ぽちぽち設定を見たところ、

プロジェクト → プロパティ → C/C++ → コード生成 → 関数レベルでリンクする → 「はい(/Gy)」

エラーではないが、今後のバージョンからは削除されるということで、設定を変更した。

プロジェクト → プロパティ → C/C++ → コード生成 → 宰相リビルドを有効にする → 「いいえ(/Gm-)」

マイクロソフトのエラー説明ページを見たが、エラーの原因はわからなかった。 そこで、文字コードをutf-8にした。 その設定では、ビルドに時間がかかっているかと思いきや、1分ほどしてVisualStudioの応答がなくなった。無念。 そのままプログラムを再起動したら文字化け状態でプログラムが起動できた。

プロジェクト → プロパティ → C/C++ → コマンドラインオプション → 追加「/utf-8」

なんだか、日本語の読み取りがおかしいみたい。

日本語を使うのをやめた
ライブラリに対して、膨大な数の警告が表示されるのが嫌だったので、当警告を指定して非表示にした(本来はやるべきではない。長期間コードを扱う場合は、正式に対処すべきである。)
プロジェクト → プロパティ → C/C++ → 指定の警告を無効にする → 「4828」

どんなにコードを確認しても思った通りの挙動をしないと悩んでいたら、VisualStudioの仕様(?)のようである。 どうやら、リビルドかなんかがおかしい気がしたので、以下を押したら訳もわからず解決した。 部分コンパイルとかが悪さしているのかなぁ・・・

ビルド → ソリューションのクリーン

エラー文は以下.

The build tools for vXXX (Platform Toolset = 'vXXX') cannot be found.
......

指定されたビルドツールが見つからないと指摘されているので,以下の手順で指定ビルドツールを変更するとよい.

プロジェクト → プロパティ → 構成プロパティ → 全般 → プラットフォーム ツールセット → 「(インストールされていません)と書かれていないバージョンに設定」

IDEってはじめて使ったけど、めっちゃいいやつ!! 特に、VisualStudioの場合はエラーコードを細分化してくれてて、IDE上に表示されたエラーコードをクリックしたら該当ヘルプページをブラウザで開いてくれるのがナイス! ただ、何も設定していない部分でエラーを起こすのはやめてほしい・・・

関連タグを探す