IISExpress exe はコード 0 0x0 で終了 しま した

2018/9/6 2020/1/27 Visual Studio2017

Visual Studio2017でcmd.exeが表示されない

久しぶりにC言語でVisual Studioを使用しようと「デバッグなしで開始」を実行すると

「C\WINDOWS\system32\cmd.exe」ではなく、「Microsoft Visual Studio のデバッグコンソール」が表示され

priinf で記述した 文字は表示されたものの

C:\Users\sourse\repos\sanple_proj\Debug\sanple_proj.exe (プロセス 11812)は、コード0を伴って終了しました。

このウィンドウを閉じるには、任意のキーを押してください…

と表示されました。↓

IISExpress exe はコード 0 0x0 で終了 しま した

試したこと

・競合しそうなMAMPをアンインストールしても解消されなかったので、色々調べていると、いい回答がありましたので、試してみました。

参考サイトhttps://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10195343530

【ツール】→【オプション】を選択

【全般】→【デバッグの停止時には自動的にコンソールを閉じる】にチェックを入れて【OK】をクリック

IISExpress exe はコード 0 0x0 で終了 しま した

後は通常通り、【デバッグ】→【デバッグなしで開始】をクリックすると

通常通りcmd.exeの画面が表示されました。

IISExpress exe はコード 0 0x0 で終了 しま した

一安心です。

余談ですが、色々なソフトが競合したして

・windows7では、Visual Studio2017をインストールした後、MAMPをインストールすると不具合がおきデバッグなしで開始の画面が表示されず、MAMPをアンインストールすると正常に動きました。

・Windows10でMAMP→MySQLWorkbenchの順にインストールすると同じポート3306を使用するので、MAMPの起動時にエラーが出力され、MAMPが起動できませんでした。

結果・・・・

MAMPとVisualStudio

MAMPとMySQLWorkbench

の相性がよくないようです。

インストール時に参考にして下さいね。

VisualStudioとMySQLWorkbenchは?です。

Windows7では、MySQLWorkbenchはインストールできましたが起動不可能のままです。Windows10では、不具合はあったものの現在両方とも正常に動いています。

Discussion:

Visual C++.NETでのデバックが上手く起動しません。

(too old to reply)

僕はVisual C++.NET Standard version
2003 アカデミックパックを使用し始めた初心者です。それで簡単なソースをかいてコンパイル実行としたところ、ビルドは上手く起動したのですが、デバックしようとしたとこと、デバックの画面に

~.exe': 'C:\WINDOWS\system32\ntdll.dll' を読み込みました。シンボルが読み込まれていません。
~.exe': 'C:\WINDOWS\system32\kernel32.dll' を読み込みました。シンボルが読み込まれていません。
プログラム '[1144] ~.exe: ネイティブ' はコード 0 (0x0) で終了しました。

といったエラー文が出力され、実行できません。どのようにすれば正しくデバックできるか教えてください。

これと同じ現象でしょうか?
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=18108&forum=7&2

デバッグモードでコンパイルし、ブレークポイントを入れてみて確認してください。
--
Katsuhiko Utsubo

Post by tetu
僕はVisual C++.NET Standard version
2003 アカデミックパックを使用し始めた初心者です。それで簡単なソースをかいてコンパイル実行としたところ、ビルドは上手く起動したのですが、デバックしようとしたとこと、デバックの画面に
~.exe': 'C:\WINDOWS\system32\ntdll.dll' を読み込みました。シンボルが読み込まれていません。
~.exe': 'C:\WINDOWS\system32\kernel32.dll' を読み込みました。シンボルが読み込まれていません。
プログラム '[1144] ~.exe: ネイティブ' はコード 0 (0x0) で終了しました。
といったエラー文が出力され、実行できません。どのようにすれば正しくデバックできるか教えてください。

とっちゃんです。

え~、結論から言うとデバッグできています。

で、おそらくやりたいことはソースコードを1行ずつ実行するステップ実行だと
思いますので、それのやり方を...

まず、IDE 上で実行を開始する形態には以下の3つがあります。
1.デバッグしないで実行(デバックしないで開始)
2.デバッグ実行(デバッグで開始)
3.ステップ実行(ステップイン、またはステップオーバー)

多分、2を行って、コンソールアプリ(HalloWorldとか)を実行したところ
一瞬画面左上が黒くなってすぐに元に戻ったと思われます。

この場合、短いプログラムであれば(main関数だけで終わってしまうようなもの)、
3 のステップ実行がよいでしょう。

もうちょっと規模の大きいものであれば、デバッグを開始する前に、
ブレークポイントを設定し、それからデバッグ実行するのがよいでしょう。

ちなみに、デバッグを開始すると

Post by tetu
~.exe': 'C:\WINDOWS\system32\ntdll.dll' を読み込みました。シンボルが読み込まれていません。
~.exe': 'C:\WINDOWS\system32\kernel32.dll' を読み込みました。シンボルが読み込まれていません。

という行が数行続いた後(先頭に、実行するEXEの情報が出ている)、
実際のデバッグが開始されます。
この部分が何を行っているかについては、もう少しプログラムの仕組みなどがわかってきてから
お勉強するとよいと思います(DynamicLinkLibrary の仕組みとかの知識が必要になってくるため)。

・ブレークポイントの設置例
たとえば、下記プログラムがあったとします(例はCで記述)

#include <stdio.h>

int main()
{
int cnt;
for( cnt = 0 ; cnt < 10 ; cnt++ ){
printf( "Count=%d\n", cnt*cnt );
}
return 0;
}
ここで、ブレークポイントを張る場合は、
最初の "{"の行(mainのすぐ下)か、
for 文の行にカーソルを置き、F9または右メニューからブレークポイントを設置します。
(ソースの左側に暗い赤丸が表示される)

この状態で、F5(デバッグ実行)をすると、赤丸の行でとまります。

まずはお試しあれ。

いろいろありがとうございます!それでなんですが、今気づいたのですが、ファイル事態を既存項目を追加しないでビルドしていたため、ビルド事態ができていませんでした。そこでそれをした上でビルドしたのですが、今度は

fatal error C1010: プリコンパイル済みヘッダーの検索中に予期しない EOF を検出しました。

というエラーがでてビルドができませんでした。何度もすいませんが、これはどういうエラーなんでしょうか?ちなみにプログラムは

#include<iostream>

int main()
{
cout << "start!!!\n";

return 0;
}

といったソースを実行しようとしています。

いろいろとありがとうございました。それで今気づいたのですが、即存項目の追加をしていなかったため、ビルド事態が間違っていました。それでそれをした上でビルドしたところ、
c:\documents and settings\tt\my documents\visual studio
projects\sample1.cpp(9): fatal error C1010: プリコンパイル済みヘッダーの検索中に予期しない EOF
を検出しました。

というエラー文が出て、ビルド事態ができませんでした。何度もすいませんが、これはどういったエラーなんでしょうか?ちなみにソースは以下のものを使用しています。
#include<iostream>

int main()
{
cout << "common!!!\n";

return 0;
}

とっちゃんです。

Post by tetu
いろいろとありがとうございました。それで今気づいたのですが、即存項目の追加をしていなかったため、ビルド事態が間違っていました。それでそれをした上でビルドしたところ、
c:\documents and settings\tt\my documents\visual studio
projects\sample1.cpp(9): fatal error C1010: プリコンパイル済みヘッダーの検索中に予期しない EOF
を検出しました。

まずは、エラーの調べ方から
エラーの表示された行の C1010 の上にカーソルを置き、F1キーを押すとヘルプが出ます。
ヘルプには表示される内容よりももう少し詳しいことが出ていますので、エラーが発生したら、まずヘルプを見ましょう。

と、これではあんまりなので(^^;

プリコンパイルヘッダーですが、これは、プロジェクト内のすべてのソースの先頭に含まれるヘッダーだけを
事前にコンパイルしておくという仕組みです。
これにより、多数のソースが含まれているプログラムのビルド時間が短縮されます。
(ソースが1本の場合でも、2回目以降のビルドでは時間が短縮される)。
ですが、これを利用するためには、プロジェクトにプリコンパイルヘッダーを作るという設定が
行われている必要があります。

プロジェクトは作っているようですが、最初の設定はどうしているでしょうか?
もし、空のプロジェクト(まったく何もないプロジェクト)であれば、空のプロジェクトのチェックをはずして
作ってください(VisualC++ 自身が、プリコンパイルヘッダーを使って構築されるのを前提としているので、
将来的な意味も含みます...)。

ということで、先ほどのプログラムと同じようなものをプリコンパイルヘッダーつきで
作る場合のやり方を一気に書いておきます。
行は多いですが、やることは至極単純です。

まず、Win32コンソールプロジェクトを作成します。
作り方は、
ファイル-新規作成-プロジェクトでダイアログを開き、
プロジェクトの種類のツリーから
VisualC++ - Win32を選び、
右側のリストの Win32 コンソールプロジェクトを選択します。
プロジェクト名をいれ(ここではTest)、OKを押すと別のダイアログが出てくるので、
ダイアログの左側の「アプリケーションの設定」をクリックします。
ここで、
アプリケーションの種類が コンソールアプリケーションになっていることを確認し、
ほかのチェックボックスは全部チェックしていない状態にします。

OKを押して、プロジェクトを作成したら、ソリューションエクスプローラを開くと
下のようなツリーになっているはずです。

ソリューション
Test
参照設定
ソースファイル
stdafx.cpp
Test.cpp
ヘッダーファイル
stdafx.h
リソースファイル
Readme.txt

ここにあるReadme.txt を見ると、それぞれのファイルが何かというのが
簡単ではありますが、記述されていますので、一度見てみるとよいでしょう。

次は、実際にプログラムを作成する作業です。
修正するファイルは Test.cpp です。
stdafx.h については、もう少し後になって、複数の#include を扱うときに
もう一度質問してください。

まずは、Test.cpp を開きます。
----ここから----
// Test.cpp : コンソール アプリケーションのエントリ ポイントを定義します。
//
#include "stdafx.h"

int _tmain(int argc, _TCHAR* argv[])
{
return 0;
}
----ここまで----
となっていますので、
#include "stdafx.h" を残して全部消します(コメントは残しておいてもかまいません)。

次に、実際に本などに乗っているプログラムソースを先頭から全部書き込みます。
このときに、#include <iostream> などは、 stdafx.h よりも後ろの行に書いてください。
以下のような形になりますので、

#include "stdafx.h"
#include<iostream>

int main()
{
cout << "common!!!\n";

return 0;
}
これで、F7(ビルド)を行います。

エラーが出なければ、そのまま Ctrl+F5 で、デバックしないで実行を行うと
画面にコンソールがでて、
comon!!! という行と続く1行が出てきます。

正常に起動しました!本当にいろいろ親切に教えてもらってありがとうございました!まだまだ未熟ですが、これからがんばって勉強していこうと思います、またわからないことがればお聞きしたいと思いますので、もしよければまた教えてください。

本当に何度もすいません!!今ファイルを読み込むソースをビルドしたところリンクに関する以下のようなエラーが表示されました。

bitmap処理 fatal error LNK1201: プログラム データベース 'c:\Documents and Settings\tt\My
Documents\Visual Studio Projects\bitmap処理\Debug\bitmap処理.pdb'
に書き込めません。ディスク容量不足、パスが無効、また十分な特権がない可能性があります。

ディスク容量は1G以上の空きがあるので容量不足はないと思うのですがこれはどうすればいいのでしょうか?ソースは以下の通りです。

#include<fstream>
#include<iostream>
using namespace std;

int main()
{
char s[100];

cin >> s;
ifstream fin("ss.txt");

char ch;
while(!fin.eof())
{
fin.get(ch);
cout.put(ch);
}

fin.close();

return 0;
}

とっちゃんです。

Post by tetu
bitmap処理 fatal error LNK1201: プログラム データベース 'c:\Documents and Settings\tt\My
Documents\Visual Studio Projects\bitmap処理\Debug\bitmap処理.pdb'
に書き込めません。ディスク容量不足、パスが無効、また十分な特権がない可能性があります。
ディスク容量は1G以上の空きがあるので容量不足はないと思うのですがこれはどうすればいいのでしょうか?ソースは以下の通りです。

MSDNによると LNK1201 のエラーの原因は

・ファイルが破損しています。PDB ファイルを削除し、再リンクしてください。
・ディスクに十分な空き容量がないため、ファイルを書き込むことができません。
・ドライブを使用できません。ネットワーク上の問題が原因と考えられます。
・リンクを試みているプログラムでデバッガがアクティブになっています。

となっています。

最初に確認しておきたいのが、デバッグ中ではないか?という可能性です。
もし、これはない、ということであれば、別の可能性として、
「プログラムのファイル名に日本語が含まれているから」
というのがあります。

VisualC++ は、かなり日本語化が進んでおり、ほとんどの場合においては日本語の問題は
発生しないのですが、VC2003 では、コンパイラのバージョンは Ver.12だったか13 だったかと
非常に古くからバージョンアップを繰り返しているソフトでもあります。
そのため、中には古くから存在しているコードもあると思われますので、その部分で
日本語を考慮していないという可能性があります。

とりあえず、プロジェクトを新規作成しなおして、プロジェクト名に日本語を入れないようにして
試してみてはどうでしょう。

Loading...