none
Visual studio 2017 新しいプロジェクトを作成したが.exeファイルが作成されないため、F5を押しても「指定されたファイルが見つかりません」と表示され実行できない

    質問

  • Visual studio 及びプログラミングの初心者です。

    よろしくお願いします。

     Visual studio 2017 をWindows10にインストール済みの環境です。

    空のプロジェクトを ファイル>新規作成>プロジェクト>空のプロジェクトから作成し下記のソースコードを デパッグ>デバッグなしで開始 ら実行しましたが「指定されたファイルがみつかりません」とエラー表示され実行できません。

    ~ソースコード~

    #include <stdio.h>

    int main(void)
    {
    printf(“Hello, world!”);

    return 0;
    }

    エラーに表示されているパスをたどりフォルダーを開いてみましたが、.sln .vcxproj .filters .user の拡張子のファイルはありましたが、.exe はありませんでした。

    どのようにすれば正常に実行できるようになるのか、ご教示いただければ幸いです。


    2018年6月24日 2:40

回答

  • コンソールのようなものが一瞬開き、何か実行されたようなんですが、すぐに閉じてしまい、エラー一覧に下記のエラーが表示されました。

    VisualStudioからプログラムの実行をさせると、コンソールが開いてプログラムが実行されて、その実行が終了したのでコンソール画面が自動で閉じてしまいます。
    たとえばreturn 0;の前にgetchar();などを入れてやるとキー入力するまでプログラムが終了しないのでコンソールが開いたままになります。
    単に確認だけあればデバッグ無しで開始(ctrl+F5)で実行することもできます。

    Project1.exe’ (Win32): ’C:Windows¥SysWOW64¥msvcrt.dll'が読み込まれました。PDB ファイルを開けないか、ファイルがみつかりません。

    VisualStudioの出力ウィンドウに表示されたそれらはデバッグ情報です。
    実行中の挙動を出力しているだけなのでこのメッセージは問題ありません。

    Windowsのプログラムを実行するにはexeファイル単独では実行できません。
    たとえばprintfという命令で画面に文字列を表示させるだけでも、c言語のライブラリがOSに文字を描画してくださいという命令をしなければなりません。そのような処理はexeファイルでなくOSが持っているライブラリを呼び出してやります。
    このようなライブラリはdllと呼ばれるファイルになります。
    msvcrt.dllはVisualC++で作ったexeを実行するのに必要なC言語のライブラリです(マイクロソフトがVCのランタイムとして用意している)。
    このライブラリは外部にすでに存在する(windowsのシステムフォルダ)のでビルドされませんが、実行時には必要なので自動で読み込まれます。

    pdbファイルはデバッグに必要な情報を格納したファイルですが、見つからないのはmsvcrtにはそのファイルが存在していないという事です。
    (msvcrtd.dllというデバッグ用のバージョンが使用されます)
    なくてもデバッグでmsvcrtの中身の詳細な解析ができないだけなので問題ありません。

    保存先に実行ファイルがないように見受けられるのですが、それはそういうものなのでしょうか。

     VCは初期状態だと*.slnファイルのあるフォルダにDebugフォルダやReleaseフォルダが作られて、その中にexeファイルが出来上がります。
    #設定で変えることもできます


    個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)

    2018年6月24日 9:56
  • 提示されているコードがエディタからコピペしたものであるなら、原因としては全角文字が混ざっているからですね。
    参考にしたとされるページのコードも全角になっていて間違っているので、おそらくそのままコピペした影響でしょう。
    そこの注意書きに「すべて半角英数字で入力してください。」となっているので、元のページの作者も全角になっていることがわかっているのかもしれませんが・・・

    エディタでは赤の波線などでエラー箇所が表示されてると思うので、そのあたりをよく見ると何が間違っている箇所か気づけると思います。

    とりあえず、“Hello, world!”の両かっこが全角になっているので、半角の"に置き換えてください。
    入力は日本語キーボードでIMEの日本語入力を使用しているのならIMEをoffにするか直接入力に切り替えて、Shift+2を押せば入力できる奴です。


    個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)

    2018年6月24日 6:49

すべての返信

  • どういうアプリを作りたいのでしょう?

    もし、Windows Forms, WPF, ASP.NET とかですと C++ という選択から間違っていると思うのですが・・・

    2018年6月24日 3:10
  • ご返信ありがとうございます。

    現在C言語の勉強を始めようとしているところです。

    VS2017 をインストールし、正常に動作するか確認作業を行ったところ、それ以上進めなくなり、困っております。

    参考にしたサイトは 「C言語入門講座ツナサーモン」というサイトです。

    参考までにエラーメッセージを添付したいのですが、アカウントを取得したばかりで、画像の添付が許可されていないようですのでここに記載いたします。

    ~~~~~

    プログラム 'C¥Users¥PC¥Documents¥VisualStudio2017¥Project1¥Debug¥Project1.exe'を開始できません。

    指定されたファイルは見つかりません。

    ~~~~~

    エラー一覧の表示

    ~~~~~

    E0020 識別子”Hello”が定義されていません。

    E0020 識別子”World”が定義されていません

    E0018 '('が必要です

    C3873 ’0x201c’:この文字を識別子の最初の文字にすることはできません

    他7つ

    ~~~~~

    そもそも、なぜそこに.exe ファイルが作成されないのかが疑問です。
    Windows7の環境でも試しましたが、同じ結果でした。

    ですので、そもそもインストールの仕方で何か見落としているとことがあるのではと考え何度も試しましたが、同じような結果です。

    また、似たような事例でWeb検索もし下記の改善策を試しましたが、改善しませんでした。

    http://xoax.net/cpp/crs/visualcpp/lessons/CreateExe/

    以上です。よろしくお願いいたします。


    2018年6月24日 5:34
  • 提示されているコードがエディタからコピペしたものであるなら、原因としては全角文字が混ざっているからですね。
    参考にしたとされるページのコードも全角になっていて間違っているので、おそらくそのままコピペした影響でしょう。
    そこの注意書きに「すべて半角英数字で入力してください。」となっているので、元のページの作者も全角になっていることがわかっているのかもしれませんが・・・

    エディタでは赤の波線などでエラー箇所が表示されてると思うので、そのあたりをよく見ると何が間違っている箇所か気づけると思います。

    とりあえず、“Hello, world!”の両かっこが全角になっているので、半角の"に置き換えてください。
    入力は日本語キーボードでIMEの日本語入力を使用しているのならIMEをoffにするか直接入力に切り替えて、Shift+2を押せば入力できる奴です。


    個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)

    2018年6月24日 6:49
  • ご返信ありがとうございます。

    ご推測の通り、完コピしてました。

    すみません。

    全くの初心者なんですが、仕事の都合上C言語とはどのようなものか知る必要がありこの度勉強をし始めました。
    いつのことになるのかはわかりませんが、最終的には趣味の範囲でも何か作ることができればなお幸いと思って、コツコツと勉強を続けております。本当に初歩的な質問ばかりで心苦しいですが、どうかよろしくお願いいたします。

    全角文字を半角文字に直し再度実行してみました。

    コンソールのようなものが一瞬開き、何か実行されたようなんですが、すぐに閉じてしまい、エラー一覧に下記のエラーが表示されました。

    エラー

    ~~~~~~

    Project1.exe’ (Win32): ’C:Windows¥SysWOW64¥msvcrt.dll'が読み込まれました。PDB ファイルを開けないか、ファイルがみつかりません。

    Project1.exe’ (Win32): ’C:Windows¥SysWOW64¥rocrt4.dll'が読み込まれました。PDB ファイルを開けないか、ファイルがみつかりません。

    Project1.exe’ (Win32): ’C:Windows¥SysWOW64¥sspicli.dll'が読み込まれました。PDB ファイルを開けないか、ファイルがみつかりません。

    他同様のエラー3つ

    スレッド 0x684 はコード 0 (0x0)で終了しました。

    他同様のエラー2つ

    ~~~~~~

    保存先に実行ファイルがないように見受けられるのですが、それはそういうものなのでしょうか。

    それとも通常は.exe ファイルも他のファイルと一緒に作成されるのでしょうか。

    拡張子を表示させておりますが、見当たらないです。

    以上です。

    よろしくお願いいたします。





    2018年6月24日 7:56
  • コンソールのようなものが一瞬開き、何か実行されたようなんですが、すぐに閉じてしまい、エラー一覧に下記のエラーが表示されました。

    VisualStudioからプログラムの実行をさせると、コンソールが開いてプログラムが実行されて、その実行が終了したのでコンソール画面が自動で閉じてしまいます。
    たとえばreturn 0;の前にgetchar();などを入れてやるとキー入力するまでプログラムが終了しないのでコンソールが開いたままになります。
    単に確認だけあればデバッグ無しで開始(ctrl+F5)で実行することもできます。

    Project1.exe’ (Win32): ’C:Windows¥SysWOW64¥msvcrt.dll'が読み込まれました。PDB ファイルを開けないか、ファイルがみつかりません。

    VisualStudioの出力ウィンドウに表示されたそれらはデバッグ情報です。
    実行中の挙動を出力しているだけなのでこのメッセージは問題ありません。

    Windowsのプログラムを実行するにはexeファイル単独では実行できません。
    たとえばprintfという命令で画面に文字列を表示させるだけでも、c言語のライブラリがOSに文字を描画してくださいという命令をしなければなりません。そのような処理はexeファイルでなくOSが持っているライブラリを呼び出してやります。
    このようなライブラリはdllと呼ばれるファイルになります。
    msvcrt.dllはVisualC++で作ったexeを実行するのに必要なC言語のライブラリです(マイクロソフトがVCのランタイムとして用意している)。
    このライブラリは外部にすでに存在する(windowsのシステムフォルダ)のでビルドされませんが、実行時には必要なので自動で読み込まれます。

    pdbファイルはデバッグに必要な情報を格納したファイルですが、見つからないのはmsvcrtにはそのファイルが存在していないという事です。
    (msvcrtd.dllというデバッグ用のバージョンが使用されます)
    なくてもデバッグでmsvcrtの中身の詳細な解析ができないだけなので問題ありません。

    保存先に実行ファイルがないように見受けられるのですが、それはそういうものなのでしょうか。

     VCは初期状態だと*.slnファイルのあるフォルダにDebugフォルダやReleaseフォルダが作られて、その中にexeファイルが出来上がります。
    #設定で変えることもできます


    個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)

    2018年6月24日 9:56
  • ご返信ありがとうございます。

    return 0;の前にgetchar();をいれることで、コンソールが開き、正常に Hello World が表示されました。
    ずっと解決できなかったので、本当に嬉しいです。
    ありがとうございました。

    お陰様で解決し、皆さまの仲間いりさせていただくことができました。

    ”Hello World!!”

    .slnファイルのあるフォルダを確認しましたが、DebugフォルダもReleaseフォルダも作成されておりませんでしたが、何か初期設定がよくなかったのかもしれません。

    ひとまず今の状態で利用してみて、また何かありましたら質問を投稿したいと思います。

    本当にありがとうございました。
    (^-^)


    2018年6月24日 10:47
  • Visual studio 2017 .exeファイルが作成されないさん、こんにちは。
    フォーラム オペレーターの立花です。
    MSDN フォーラムへご投稿くださいましてありがとうございます。
    "Hello World!" が表示されたとのこと、おめでとうございます。

    フォーラムの利用方法についてお願いがあり返信させていただきました。

    問題に対して参考となった投稿、および回答に値する投稿には、
    その投稿に対して [回答としてマーク] のご設定くださいませ。

    同じ問題で後から参照した方がすぐに情報を見つけられるようになりますので、
    ご協力の程、どうぞよろしくお願いいたします。

    フォーラム利用時の注意点のお知らせです。
    ※初めてご投稿された方を対象にお知らせしています。

    ご利用の際は、下記内容をお守りいただきますと
    情報が寄せられやすくなりますので、ぜひご一読ください。
    フォーラムでご質問頂くにあたっての注意点
    フォーラムのご利用方法(質問の投稿)について
    フォーラムへの回答に関するガイドラインおよびフォーラム運営について(再掲)
    ご意見、ご要望はこちらのフォーラムまで。
    各種設定方法はフォーラム内を [かんたん フォーラム ガイド] で検索してみてください。


    参考になった投稿には回答としてマークの設定にご協力ください
    MSDN/TechNet Community Support 立花楓

    2018年6月25日 1:06
    モデレータ
  • はい。
    ありがとうございます。

    (*^-^*)

    2018年6月26日 12:18