# Native Code > برنامه نویسی با C > برنامه نویسی با زبان C و ++C > سوال: چرا ویژوال استودیو برنامه نوشته شده رو اجرا نمی کنه؟

## idocsidocs

من توی نسخه اکسپرس 2010 از طریق کنسول یه پروژه جدید ایجاد کردم و یه برنامه نوشتم.

اما وقتی برای اجرای برنامه کلید F5 رو می زنم، یه پنجره باز مشه و می گه فایل startpro.exe یافت نشد.

به همین دلیل نمی تونم برنامه ای که نوشتم رو اجرا کنم.

باید بگم که ویژوال اسودیو رو دیشب دانلود و نصب کردم و نسخه 2010 هست.

لطفا بگید مشکل چیه؟

----------


## idocsidocs

دوستان کسی نمی دونه مشکل چیه؟

اگر کلید F5 رو بزنم فایل exe ساخته می شه یا باید بصورت جداگانه این فایل رو بسازم؟ 

بنظرتون مشکل چیه؟

----------


## حامد مصافی

برو در فولدر پروژه ببین اصلا فایل اجرایی برنامت وجود داره؟ اگر نداشت از یک آنتی ویروس بخواه سیستمتو بررسی کنه

----------


## idocsidocs

> برو در فولدر پروژه ببین اصلا فایل اجرایی برنامت وجود داره؟ اگر نداشت از یک آنتی ویروس بخواه سیستمتو بررسی کنه


الان این برنامه رو نوشتم:
#include <iostream>
using namespace std;
int main(){ 
    cout << "Hello, my programmer!\n" ;
    return 0;
}
فایل exe ایجاد نمی شه.

این ارور ها نمایش داده می شه:
1>------ Build started: Project: f1, Configuration: Debug Win32 ------
1>  f1.cpp
1>c:\documents and settings\f1\my documents\visual studio 2010\projects\f1\f1\f1.cpp(1): warning C4627: '#include <iostream>': skipped when looking for precompiled header use
1>          Add directive to 'StdAfx.h' or rebuild precompiled header
1>c:\documents and settings\f1\my documents\visual studio 2010\projects\f1\f1\f1.cpp(7): fatal error C1010: unexpected end of file while looking for precompiled header. Did you forget to add '#include "StdAfx.h"' to your source?
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

بنظرتون مشکل از کجاست؟

----------


## aezvenoos

سلام
عزیز ویژوال یه هدری رو به برنامه اضافه می کنه که بدون برنامه run نمی شه
کافیه هدر زیر رو اضافه کنید که تو ارور ها هه نوشته 
#include "StdAfx.h"

----------


## idocsidocs

> کافیه هدر زیر رو اضافه کنید که تو ارور ها هه نوشته


الان برنامه رو به این شکل تغییر دادم ولی باز هم فایل exe اجرا نشد !
#include "stdafx.h";

#include <iostream>;
using namespace std;
int main()
{ //prints "Hello, my programmer!" :
cout << "Hello, my programmer!\n" ;
return 0;
}
اروری که نمایش داده شد:
'ffff.exe': Loaded 'C:\Documents and Settings\ok\My Documents\Visual Studio 2010\Projects\ffff\Debug\ffff.exe', Symbols loaded.
'ffff.exe': Loaded 'C:\WINDOWS\system32\ntdll.dll', Cannot find or open the PDB file
'ffff.exe': Loaded 'C:\WINDOWS\system32\kernel32.dll', Cannot find or open the PDB file
'ffff.exe': Loaded 'C:\WINDOWS\system32\msvcp100d.dll', Symbols loaded.
'ffff.exe': Loaded 'C:\WINDOWS\system32\msvcr100d.dll', Symbols loaded.
The program '[3992] ffff.exe: Native' has exited with code 0 (0x0).

بنظرتون مشکل چیه؟

----------


## حامد مصافی

برنامه شما اجرا میشه. فقط چون این عمل سریع اتفاق می‌افته شما نمی‌تونید ببینیدش! یک دستور sleep یا دریافت ورودی در پایان برنامه قید کنید.

----------


## amir.bakhtiari

با Ctrl+F5 اجرا کن تا نتیجه برنامتو ببینی.

----------


## idocsidocs

> با Ctrl+F5 اجرا کن تا نتیجه برنامتو ببینی.


مرسی دوستان
با این روش کد اجرا شد.

اما نمی شه کاری کرد که برنامه پس از اجرا حذف نشه؟

----------


## aezvenoos

> مرسی دوستان
> با این روش کد اجرا شد.
> 
> اما نمی شه کاری کرد که برنامه پس از اجرا حذف نشه؟


حذف نشه ؟؟؟؟؟؟؟
مگه برنامه حذف میشه ؟ برید توی پوشه اون برنامه فایل اجرایی اون برنامه هست

----------


## idocsidocs

وقتی یه کد رو می نویسم و کامپایل می کنم، بعد از کامپایل اگر کدها رو تغییر بدم، خروجی فقط برای کد اول ایجاد می شه و کدهای بعدی هیچ تغییری نمی کنن ! چطور می شه این محدودیت رو برطرف کرد؟

یه مشکل دیگه هم اینکه الان توی ویژوال استودیو ورژن اکسپرس این کد رو نوشتم و موقع اجرا ارور داد !
#include <iostream>
int main(){ 
    cout << "Hello, World!\n";
    return 0;
}
بعد از چند دقیقه متوجه شدم که خط زیر رو اضافه نکردم !
using namespace std;
کلا توی خطا یابی هیچ اروری نمی گیره ! اگر ; رو اضافه کنم یا اضافه نکنم هیچ فرقی نداره براش ! 

نمی شه کاری کرد که بشه موقع کد نویسی ارورها رو نوشنم بده تا وقتم کمتر تلف بشه؟
الان phpdesigner این قابلیت رو داره و کارم رو خیلی راه انداخته.

----------


## amir.bakhtiari

> الان phpdesigner این قابلیت رو داره و کارم رو خیلی راه انداخته.


من با ورژن اکسپرسش کار نکردم ولی با ultimate که برنامه مینویسم هر خطی که ERROR داشته باشه یه خـط قرمز زیر خطی که دارای ERROR باشه مشخص میکنه و فکر نکنم تو اکسپرس هم فرقی داشته باشه.
موفق باشید

----------


## idocsidocs

> من با ورژن اکسپرسش کار نکردم ولی با ultimate که برنامه مینویسم هر خطی  که ERROR داشته باشه یه خـط قرمز زیر خطی که دارای ERROR باشه مشخص میکنه و  فکر نکنم تو اکسپرس هم فرقی داشته باشه.


وقتی یه کد رو می نویسم و کامپایل می کنم، بعد از کامپایل اگر کدها رو  تغییر بدم، خروجی فقط برای کد اول ایجاد می شه و کدهای بعدی هیچ تغییری نمی  کنن ! چطور می شه این محدودیت رو برطرف کرد؟

----------


## one hacker alone

شما rebuild all بزن این مشکلتون حل میشه

----------


## idocsidocs

> شما rebuild all بزن این مشکلتون حل میشه


برای اجرای مجدد هر برنامه باید این فرایند تکرار بشه؟

سوال دیگه اینکه چرا توی ویژوال باید سرفایل StdAfx.h رو به برنامه اضافه کرد؟

----------


## one hacker alone

در مورد  سوال اولتون باید بگم من خودم همیشه عادت کردم میزنم و دقت نکردم کجا بزنم کجا نزنم زیاد مهم نیست مهم اینه که برنامه اجرا بشه البته توی پروژه های خیلی سنگین اونوقت مهم میشه
سوال دوم هم باید بگم این فایل سرایند اطلاعات مربوط به solution پروژه شما یعنی فایل هاتون که در پروژه دخالت دارند رو در خودش نگه میداره لذا در وقت ساخت پروژه برنامه میره سراغ اون فایل و اطلاعات مربوط به فایل های سرایند و فایل های دیگه و مکان اونها رو میخونه

----------


## idocsidocs

> سوال دوم هم باید بگم این فایل سرایند اطلاعات مربوط به solution پروژه شما  یعنی فایل هاتون که در پروژه دخالت دارند رو در خودش نگه میداره لذا در  وقت ساخت پروژه برنامه میره سراغ اون فایل و اطلاعات مربوط به فایل های  سرایند و فایل های دیگه و مکان اونها رو میخونه


توی زبان سی هم باید این سرفایل رو بکار برد؟

----------


## one hacker alone

بله - این موضوع مربوط به این IDE هست حالا  سی و ++ فرقی نداره

----------

