‘Application’ does not contain a definition for ‘Run’

Error 3 ‘Application’ does not contain a definition for ‘EnableVisualStyles’

Error 4 ‘Application’ does not contain a definition for ‘SetCompatibleTextRenderingDefault’

Error 5 ‘Application’ does not contain a definition for ‘Run’

말 그대로…

저 메서드를 갖고 있지 않다는 뜻이다.

왜 갖고있지 않느냐..하는 문제..

동일한 경로를 가진 중복이 발생해서 그렇다.

using System.Windows.Forms; 보다 더 접근이 쉬운 Application이라는 객체가 생성되어 있는 상황이다.

 

영어로도 써놔야될까…

As to Error message ‘Application’ object doesn’t have ‘EnableVisualStyle’ ,’ SetCompatibleTextRenderingDefault’, ‘Run’…

프로그래밍 중 오류 처리 방법

다른 컴파일러는 많이 안 써봐서 모르겠는데…

비주얼스튜디오…

특히 2008 이후버전은 에러 메세지가 굉장히 친절하다

 

그 중에도 또 특히 닷넷은 더 친절하다.

기본문법만 익히고 에러메세지 보면서 처리 해 가면서 배워도 될 정도로….

컴파일 오류가 발생하면 에러메세지를 하나하나 처리하면 프로그램이 잘 돌아가게 된다.

아직 프로그래밍을 해 본지 얼마 안되서… 에러 메세지로 해결 못할 오류는 한번인가 만나봤었는데… 정확한 상황은 잘 기억이 안 난다. 그 전에 고쳤던 부분이 어딘지 알고 있어서 다행히 쉽게 고쳤던 것 같다.

 

에러메세지는 대부분 구글검색으로 해결한다.

90%가량은 그대로 따라하면서 처리가 가능하고 10%가량은 머리를 써서 처리해야 하는 복잡한 문제다.

 

error C2440: ‘static_cast’ : cannot convert from ‘void (__thiscall CWMCALOADERDlg::* )(WPARAM,LPARAM)’ to ‘LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)’

이런 에러 메세지는 그대로 붙여넣으면 검색결과가 전혀 나오지 않는다.

공통부분을 뽑아서 검색

error C2440: ‘static_cast’ : cannot convert from

error C2440: ‘static_cast’ : cannot convert from 여기에 void와 LRESULT를 추가해도 된다.

 

항상 네이버나 MSDN에서 찾는것보다 구글에서 검색하는게 백배 더 빠르다.

시간낭비를 줄이기 위해서~

error C2440: ‘static_cast’ : cannot convert from ‘~’ to ‘~’

error C2440: ‘static_cast’ : cannot convert from ‘void (__thiscall CWMCALOADERDlg::* )(WPARAM,LPARAM)’ to ‘LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)’

MSDN은 안보이는데… 관련 에러에 대한 다른 포스팅들

http://blog.stevienova.com/2007/02/28/error-c2440-static_cast-cannot-convert-from-uint-__thiscall-cstaticlink-cpoint-to-lresult-__thiscall-cwnd-cpoint/

 

가장 도움이 된 곳 http://devday.tistory.com/entry/error-C2440-staticcast-cannot-convert-from-void-thiscall-XXX-WPARAMLPARAM-to-LRESULT-thiscall-CWnd-WPARAMLPARAM

 

 

비슷한 오류가 많은 것 같은데…

처리방법은 이런식으로 응용하면 될 듯 하다.

이번 경우에는 에러메세지가 void랑 LRESULT랑 처리를 못 하겠다는 뭐 그런거니까…

void를 LRESULT형태로 바꿔준것..

missing type specifier – int assumed. Note: C++ does not support default-int

http://msdn.microsoft.com/ko-kr/library/ms173696(v=VS.100).aspx

MSDN에 한글로 번역돼있지만 뭔소린지 잘 모르겠다.

 

 

소스코드를 보면…int를 명시적으로 선언하라는 것 같다.

 

 

‘symbol’ : default-arguments are not allowed on this symbol

비주얼 스튜디오 에러 메세지
‘symbol’ : default-arguments are not allowed on this symbol

 

비주얼스튜디오 6에서는 통하던건데…

요즘은 이렇게 안 만들지만, 옛날 프로그래머들이 많이 해 놓은것들… 소스코드 받아서 실행시키면 아주 자주 발행하는 에러

VisualStudio6에서 프로그램을 안 배워봐서 파라미터는 받으면서 초기화하는게 왜 필요한지 진짜로 모르겠다. 이럴거면 파라미터로 받을 필요가 없잖아….