비주얼 스튜디오 2008에서 만든 응용프로그램이..
비주얼 스튜디오 2008에서 API로 채팅 프로그램을 하나 제작했는데
2008이 깔려있지 않은 다른 컴퓨터에서는 오류가 뜨며 실행이 되지 않습니다.
컴파일 후 링크 시킨다음 다른 작업을 거쳐야하는지 아니면 다른 이유가있는지 궁금합니다.
----개발툴 정보-----
Microsoft Visual Studio 2008
버전 9.0.21022.8 RTM
Microsoft .NET Framework
버전 3.5
설치된 버전: Professional
Microsoft Visual C++ 2008
Microsoft Visual Studio 2008 Team Explorer 91605-270-5867234-60267
Microsoft Visual Studio 2008 Team Explorer
버전 9.0.21022.8
Microsoft Visual Studio 2008 Tools for Office 91605-270-5867234-60267
Microsoft Visual Studio 2008 Tools for Office
Microsoft Visual Web Developer 2008 91605-270-5867234-60267
Microsoft Visual Web Developer 2008
Crystal Reports AAJ60-G0MSA4K-68000CF
Crystal Reports Basic for Visual Studio 2008
Visual Assist X
For more information about Visual Assist X, see the Whole Tomato Software website at http://www.WholeTomato.com. Copyright (c) 1997-2008 Whole Tomato Software, Inc.
-- 오류메시지 --
응용 프로그램 구성이 올바르지 않기 때문에 이 응용 프로그램을 시작하지 못했습니다. 이문제를 해결하려면 응용 프로그램ㅇ을 다시 설치 하십시오.
MSDN이나 DevPia에
MSDN이나 DevPia에 질문을 하시면, 더 빠른 답변을 받으실 수 있을겁니다.
그리고, 어떤 언어로 작성하셨는지(.Net인지 아닌지도..)와 어떤 오류인지 정확하게 기술하시면 더 빠른 답변을 얻을 실 수 있을듯 하네요
時日也放聲大哭
時日也放聲大哭
C++ 로 작성하셨다면 C
C++ 로 작성하셨다면 C runtime library DLL (msvcr90.dll) 이나 mfc dll 이 없어서일수도 있고, c#이나 vb.net 으로 작성하셨다면 .net framework을 설치하셔야 합니다.
C++ 의 경우 컴파일러
C++ 의 경우 컴파일러 옵션에 따라서 dll 의존성을 없앨수도 있는데, 해당 내용은 아래 링크를 참고하세요.
http://msdn.microsoft.com/en-us/library/abx4dbyh.aspx
환경이
환경이 어느환경인지.. mfc가 아닌 윈폼으로 작업하셨다면 c++이라도 .net 에서 구동됩니다..
정보가 너무..
부족했었네요.. 죄송합니다.
개발툴 정보하고 오류 메시지도 추가했습니다.
위에 분들 좋은 답변 감사합니다.
http://www.microsoft.com/down
http://www.microsoft.com/downloads/details.aspx?displaylang=ko&FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf
재배포 패키지를 설치하시면 될겁니다.
-----------------
새는 왱알앵알
해당 오류는 DLL이 없어서 생기는 문제입니다.
좀 더 정확히 얘기하면, Side-by-Side Assembly가 없어서 발생하는 문제이죠.
Visual Studio 2005부터는 공용 DLL을 System32라는 곳에 몰아서 보관하지 않고, WinSxS라는
공용 어셈블리 저장공간에 별도로 저장하게 됩니다. 이렇게 저장하는 이유는 버전 충돌을 막기 위해서이고요.
이러한 공용 어셈블리의 위치 정보는 모듈의 Menifest에 저장되어서 참조되게 됩니다.
그래서 사용하는 DLL을 단순히 복사하셔서는 안되고요. cynicjj님 말씀처럼 재배포 패키지를 이용해서 공용
DLL들을 설치하셔야 합니다. (Menifest는 Windows XP이상에서만 사용할 수 있기 때문에, Windows2000에서는
그냥 System32나 어플리케이션이 있는 폴더에 DLL들을 같이 복사해 주셔야 하고요.)
참고로 그런에 에러가 나왔을때, Dependency Walker 프로그램을 이용하면, 무슨 DLL이 없는지 쉽게 확인하실 수 있습니다.
답변 감사합니다.
답변대로 하니 잘 해결되었어요.
댓글 달기