سؤال

مايكروسوفت فيجوال ستوديو

غير قادر على بدء تشغيل البرنامج "theprogram.exe".

فشل هذا التطبيق في البدء لأن تكوين التطبيق غير صحيح.مراجعة ملف البيان للأخطاء المحتملة.إعادة تثبيت التطبيق قد حل هذه المشكلة.لمزيد من التفاصيل ، يرجى الاطلاع على سجل حدث التطبيق.

نعم

البرنامج المعني هو مشروع C++، ولا يوجد به MFC، ولا AFX، والمكتبات المستخدمة هي:opengl32.lib glu32.lib SDL.lib sdlmain.lib بالإضافة إلى بنيت مسبقا libboost_signals-vc80-mt-gd-1_37.lib من الحوسبة BoostPro.

يبدأ البرنامج بشكل جيد في إصدارات الإصدار، ولكن في Debug أحصل على رسالة الخطأ المذكورة أعلاه، بالإضافة إلى عملية zombie المرفقة بمصحح الأخطاء التي لا يمكنني إيقافها.

ملفات البيان لبناء التصحيح:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC80.DebugCRT" version="8.0.50608.0" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50608.0" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC80.DebugCRT" version="8.0.50727.762" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50727.762" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
</assembly>

وبناء الإصدار:

<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type='win32' name='Microsoft.VC80.CRT' version='8.0.50727.762' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
    </dependentAssembly>
  </dependency>
</assembly>

مشاية التبعية:

Error: The Side-by-Side configuration information for "c:\prog\opengl guis\gg-0.7.0\debug\TUTORIAL.EXE" contains errors. This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem (14001).
Error: At least one required implicit or forwarded dependency was not found.
Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module.
Error: Modules with different CPU types were found.
Warning: At least one delay-load dependency module was not found.
Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.

مكتبات الارتباط الحيوي (DLL):

DEVIL.DLL
ILU.DLL
MSVCP80D.DLL
MSVCR80D.DLL
SDL.DLL
DWMAPI.DLL
ADVAPI32.DLL
DCIMAN32.DLL
DDRAW.DLL
GDI32.DLL
GLU32.DLL
KERNEL32.DLL
MSVCRT.DLL
NTDLL.DLL
OPENGL32.DLL
RPCRT4.DLL
SECUR32.DLL
USER32.DLL
ACTIVEDS.DLL
ADSLDPC.DLL
ADVPACK.DLL
APPHELP.DLL
ATL.DLL
AUTHZ.DLL
BROWSEUI.DLL
CABINET.DLL
CDFVIEW.DLL
CERTCLI.DLL
CFGMGR32.DLL
CLBCATQ.DLL
CLUSAPI.DLL
COMCTL32.DLL
COMDLG32.DLL
COMRES.DLL
CREDUI.DLL
CRYPT32.DLL
CRYPTUI.DLL
CSCDLL.DLL
DBGHELP.DLL
DEVMGR.DLL
DHCPCSVC.DLL
DNSAPI.DLL
DUSER.DLL
EFSADU.DLL
ESENT.DLL
GDIPLUS.DLL
HLINK.DLL
HNETCFG.DLL
IEFRAME.DLL
IERTUTIL.DLL
IEUI.DLL
IMAGEHLP.DLL
IMGUTIL.DLL
IMM32.DLL
INETCOMM.DLL
IPHLPAPI.DLL
LINKINFO.DLL
LZ32.DLL
MFC42U.DLL
MLANG.DLL
MOBSYNC.DLL
MPR.DLL
MPRAPI.DLL
MPRUI.DLL
MSASN1.DLL
MSGINA.DLL
MSHTML.DLL
MSI.DLL
MSIMG32.DLL
MSLS31.DLL
MSOERT2.DLL
MSRATING.DLL
MSSIGN32.DLL
MSVCP60.DLL
MSWSOCK.DLL
NETAPI32.DLL
NETCFGX.DLL
NETMAN.DLL
NETPLWIZ.DLL
NETRAP.DLL
NETSHELL.DLL
NETUI0.DLL
NETUI1.DLL
NETUI2.DLL
NORMALIZ.DLL
NTDSAPI.DLL
NTLANMAN.DLL
ODBC32.DLL
OLE32.DLL
OLEACC.DLL
OLEAUT32.DLL
OLEDLG.DLL
POWRPROF.DLL
PRINTUI.DLL
PSAPI.DLL
QUERY.DLL
RASAPI32.DLL
RASDLG.DLL
RASMAN.DLL
REGAPI.DLL
RTUTILS.DLL
SAMLIB.DLL
SCECLI.DLL
SETUPAPI.DLL
SHDOCVW.DLL
SHELL32.DLL
SHLWAPI.DLL
SHSVCS.DLL
TAPI32.DLL
URLMON.DLL
USERENV.DLL
USP10.DLL
UTILDLL.DLL
UXTHEME.DLL
VERSION.DLL
W32TOPL.DLL
WINHTTP.DLL
WININET.DLL
WINIPSEC.DLL
WINMM.DLL
WINSCARD.DLL
WINSPOOL.DRV
WINSTA.DLL
WINTRUST.DLL
WLDAP32.DLL
WMI.DLL
WS2_32.DLL
WS2HELP.DLL
WSOCK32.DLL
WTSAPI32.DLL
WZCDLG.DLL
WZCSAPI.DLL
WZCSVC.DLL
MSVCR80.DLL
TUTORIAL.EXE

استدعاء الرابط:

/OUT:"C:\prog\OpenGL GUIS\GG-0.7.0\Debug\tutorial.exe" /INCREMENTAL /NOLOGO /LIBPATH:"C:\prog\SDL-1.2.13\lib" /LIBPATH:"C:\prog\contrib\lib_win32" /LIBPATH:"C:\prog\boost\boost_1_37\lib" /MANIFEST /MANIFESTFILE:"Debug\tutorial.exe.intermediate.manifest" /NODEFAULTLIB:"LIBC.LIB" /DEBUG /PDB:"c:\prog\OpenGL GUIS\GG-0.7.0\Debug\tutorial.pdb" /SUBSYSTEM:CONSOLE /MACHINE:X86 /ERRORREPORT:PROMPT opengl32.lib glu32.lib SDL.lib sdlmain.lib  kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ".\debug\gg.lib"
هل كانت مفيدة؟

المحلول

ويبدو يرتبط بناء التصحيح ضد كل من التصحيح والافراج عن أوقات التشغيل التي سيكون أمرا سيئا للغاية - لديك غير المدرجة إما في قائمة مكتبات كنت ربط ضد - قد يكون تستحق التدقيق على الرغم

وتحرير: ويمكن أيضا أن يكون تستحق التدقيق عن أي تصريحات #pragma comment (lib...) التي يمكن أن تجبر رابط لتشمل مكتبة إضافية، مما تسبب الصراعات المحتملة (انظر أيضا <لأ href = "http://support.microsoft.com/kb/153901" يختلط = "نوفولو noreferrer "> وثائق على MSDN )

نصائح أخرى

إذا كنت انقر على الحق في الحل وانتقل إلى خصائص، تحتاج إلى تحديد المشروع بدء التشغيل واحدة وحدد مشروع الاستضافة. هذا العمل بالنسبة لي.

وكنت قد حصلت أيضا على اثنين مجموعات مختلفة من الإصدارات المدرجة في البيان لبناء التصحيح!

وقد تكون مختلفة قليلا منذ كنت على VS2005، ولكن قد تجد شيئا مفيدا في سؤالي: <لأ href = "https://stackoverflow.com/questions/59635/app-does-not-run- مع مباراة-2008-SP1-دلس-السابق-الإصدار يعمل مع-RTM-الإصدارات> التطبيقات لا يعمل "مع دلس SP1 VS 2008، الإصدار السابق يعمل مع إصدارات RTM

واجهت مشكلة مشابهة جدًا مع Visual Studio 2005 C++ Express.عند تثبيت النظام الأساسي SDK، ضع ملف MSVCR80D dll في المكان المناسب، ولكن يبدو أن VS لم يعثر عليه.

أدى تثبيت SP1 لـ VS Express وإعادة التشغيل إلى حل المشكلة بالنسبة لي.

احصل عليه هنا

وهذا يبدو مماثلا لمناقشة المشكلة في هذا Boost.Build خيط . الحلول الممكنة تنطوي على التأكد من أنك قد اخترت تثبيت جميع النكهات من وقت التشغيل، عند تثبيت Visual Studio، واستخدام أداة sxstrace.exe لإعطاء التشخيص أكثر تفصيلا. ومع ذلك، في هذه الحالات لا شيء يعمل حتى تم تثبيته Visual Studio من الصفر.

وحاول أن ننظر في سجل التطبيق مثل تشير رسائل الخطأ. وأود أيضا محاولة لاستخدام أداة مثل التبعية ووكر للعثور على / مشكلة DLL خاطئة المفقودة الممكنة.

هذا يحدث لي في كل وقت!إليك خدعة صغيرة اكتشفتها لإصلاحها:

  1. انتقل إلى "إنشاء> حل نظيف"
  2. في "مستكشف الحلول"، انقر بزر الماوس الأيمن على مشروعك، ثم انتقل إلى الخصائص
  3. تأكد من أن التكوين الموجود في الجزء العلوي الأيسر هو "Debug"
  4. انتقل إلى "Linker> System> Subsystem" وقم بتغيير ذلك إلى "لم يتم تعيينه". (إذا تم تعيينه بالفعل على "لم يتم تعيينه" قم بتغييره إلى "وحدة التحكم".)
  5. أعد بناء برنامجك، إذا فشل في التجميع فلا بأس بذلك.
  6. ارجع إلى "Linker > System > SubSystem" وقم بتغييره إلى ما كان عليه سابقًا، ثم أعد الترجمة.

الآن، لماذا يعمل هذا، لست متأكدا.

وكان نفس المشكلة تشغيل أحد التطبيقات التي تم جمعها في التكوين التصحيح. لقد ربط مع مكتبة الخارجية التي قد ترتبط مع الإصدار الإصدار من مكتبة وقت التشغيل حتى انتهى بي الأمر مع كل من الإصدار وتصحيح تشغيل مرات في نفس العملية. وبما أنني لم يكن لديك الإصدار التصحيح من هذه المكتبة الخارجية واضطررت الى التمسك الافراج عن بناء، ومرهقة لتصحيح ولكن عملي مع ذلك.

ويبدو أن القضية ذاتها كما هو موضح في هذه المقالة: <لأ href = "http://tmoniuszko.blogspot.com/2011/11/installing-service-pack-1-for-visual.html" يختلط = "نوفولو"> http://tmoniuszko.blogspot.com/2011/11/installing-service-pack-1-for-visual.html

اتبع الخطوات التالية:

  1. احفظ المشروع في مجلد جديد.
  2. ملف؛انقل source.cpp إلى المشروع.
  3. يبني.
  4. يجري.
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top