Microsoft/Visual Studio2012. 3. 12. 01:15
openCL 한다고 돌리는데 안되고!! 구글님 나빠요~
왜 visual studio express 검색하면 한글은 2005만 나와주나요 ㅠ.ㅠ
(그러니까 한글MS 사이트가 개객끼 이라는 이상한 결론?)

[링크 : http://www.microsoft.com/visualstudio/en-us/products/2010-editions/express]
Posted by 구차니
Microsoft/Visual Studio2012. 3. 11. 23:16
openCL 해보려니 깔게 많군 -_-
불법하게 하려다가 착하게(?) 리눅스로 갈려다가 귀찮아서
한번 Express 버전 설치 쿡쿡!!

설치방법
[링크 : http://www.microsoft.com/korea/msdn/vstudio/express/visualc/usingpsdk/ ]

다운로드
[링크 : http://www.microsoft.com/korea/msdn/vstudio/express/support/install/]  vc2005 express 외 iso
[링크 : http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=24826] pdsk iso
Posted by 구차니
Microsoft/Visual Studio2011. 11. 18. 23:47
잘되던 녀석인데 오류났을리는 없고..
특정 프로젝트에서 이런 에러가 발생을 한다 -_-


해결책은 그냥 명령어 라인에서 그대로 따라치면 된다.
regsrv "C:\Program Files\Common Files\Microsoft Shared\VS7Debug\msdbg2.dll"


Posted by 구차니
Microsoft/Visual Studio2011. 10. 22. 19:38
예전에 ctrl-w를 눌러서 반응이 없어서 사용을 포기했었는데 2010에서는 다시 추가되었다는 이야기도 들리고 흐음..
아무튼 클래스 위저드가 사라진 2008 버전에서는 class wizard가 아닌 class property로 존재한다.

단, dialog가 아닌 class 이므로
좌측의 class view에서 해당 class를 눌러 property에서 추가해야 한다.

아래는 별다른 설정을 하지 않은 기본화면 구성이다.
좌측에 각종 탐색 탭들과 우측에 속성이 존재한다.


클래스 위저드를 대체할 방법은 아래 내용을 참고!

Step 1. 좌측의 네비게이션 바에서 "클래스 뷰"를 선택 Dialog based Project에서는
          C..Dlg 클래스를 선택한다.


Step 2. 오른쪽 하단의 속성 혹은 "Alt-Enter"를 눌러준다.

           메뉴에서는 "보기 - 다른 창 - 속성 창" 을 눌러줘도 된다.


Step 3. "재정의"를 눌러주고


          원하는 함수를 누르면 <추가> 라는 것이 뜨며 자동으로 함수가 등록되게 된다.



만약에 다이얼로그 창을 클릭한다면 아래와 같이 3개의 아이콘 밖에 존재하지 않으며


반드시 "클래스 뷰"에서 눌러주어야 아래와 같이 "재정의" / "Overrides" 라는 이름으로 뜨게 된다.



[링크 : http://seolis.tistory.com/entry/visual-2008에서-ClassWiard-따라하기]

[링크 : http://lafirr.tistory.com/59]


+

2017.02.19

[링크 : http://jgh0721.tistory.com/entry/Visual-Studio-2010-Beta-2-클래스-위저드의-귀환]

[링크 : http://ghebook.blogspot.com/2010/05/vs2008-class-wizard.html]

Posted by 구차니
Microsoft/Visual Studio2011. 10. 18. 18:11
size_t나 int나 같은줄 알았는데
visual studio / MS에서는 다른듯..

한줄요약 : size_t는 unsinged long 형이다.

SIZE_T
The maximum number of bytes to which a pointer can point. Use for a count that must span the full range of a pointer.
This type is declared in BaseTsd.h as follows:
typedef ULONG_PTR SIZE_T;

ULONG_PTR
An unsigned LONG_PTR.
This type is declared in BaseTsd.h as follows:
 
#if defined(_WIN64)
 typedef unsigned __int64 ULONG_PTR;
#else
 typedef unsigned long ULONG_PTR;
#endif

[링크 : http://msdn.microsoft.com/en-us/library/aa383751(v=vs.85).aspx


Posted by 구차니
Microsoft/Visual Studio2011. 10. 12. 23:41
gcc 에서는 /E 옵션이 존재하는데
비쥬얼 스튜디오에서도 비슷한 옵션을 제공한다고 한다.

cl.exe, the command line interface to Microsoft Visual C++, has three different options for outputting the preprocessed file (hence the inconsistency in the previous responses about Visual C++):
[링크 : http://stackoverflow.com/questions/277258/c-c-source-file-after-preprocessing

2010/03/04 - [프로그램 사용/gcc] - gcc 컴파일 단계별 옵션
Posted by 구차니
Microsoft/Visual Studio2011. 9. 26. 14:31
우분투에서는 mono-devel 이라는 패키지를 설치하면
c#을 사용할수 있다는데 흐음.. 패키지 목록이 좀 쩌는듯?


[링크 : http://mono-framework.com/Main_Page]
    [링크 : http://mono-project.com/DistroPackages/Ubuntu]
[링크 : http://www.codeproject.com/KB/cross-platform/introtomono1.aspx]

mono 와 mono-mcs 두개의 패키지를 설치해야 하나? 
Posted by 구차니
Microsoft/Visual Studio2011. 5. 14. 19:52
openGL 에서 예제를 돌리다가 이상한 에러가 나길래 검색+추적을 해보니...

windows.h 에서 windef.h 를 불러들이는데
#undef far
#undef near
#undef pascal

#define far
#define near
#if (!defined(_MAC)) && ((_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED))
#define pascal __stdcall
#else
#define pascal
#endif
 
아무런 내용없이 far와 near가 선언이 되어 있다.
그런 이유로 변수명이나 함수명등의 용도로 far와 near를 사용할 수 없다.

아래와 같이 변수를 선언하면
 double near, far; 
near와 far는 매크로 프로세서에 의해서
 double ;
로 해석이 되므로 아래와 같은 희한한 에러가 발생한다.

c:\opengl\opengl.cpp(63) : warning C4091: '' : 변수를 선언하지 않으면 'double' 왼쪽은 무시됩니다.
c:\opengl\opengl.cpp(63) : error C2143: 구문 오류 : ';'이(가) ',' 앞에 없습니다.
c:\opengl\opengl.cpp(63) : error C2143: 구문 오류 : ';'이(가) ',' 앞에 없습니다.
 

원래 소스는 아래와 같은데
void frustum_depthoffield(GLdouble left, GLdouble right,
                        GLdouble bottom, GLdouble top,
                        GLdouble near, GLdouble far,
                        GLdouble xoff, GLdouble yoff,
                        GLdouble focus)
{
glFrustum( left-xoff*near/ focus,
right-xoff*near/focus,
top-yoff*near/focus,
bottom-yoff*near/focus,
near,far);

    glMatrixMode(GL_MODELVIEW);
    glLoadIdentity();
    glTranslatef(-xoff, -yoff, 0.0);
} 

위와 같은 이유로 황당하게 '/' 오류가 난다 -_-
c:\opengl\opengl.cpp(63) : error C2059: 구문 오류 : '/' 

Posted by 구차니
Microsoft/Visual Studio2011. 4. 21. 17:48
Visual Studio 6 용으로 제작된 VB 프로젝트를 VS2008에서 불러오려니 배쨴다 -_- 

일단은 아래와 같이 vbp 파일을 강제(!) 로 연결 프로그램에서 "Microsoft Visual Studio Version Selector"를 선택하면

요런 "업그레이드 마법사"가 뜨는데

 





변환이 완료되면 아래와 같은 HTML 형식의 업그레이드 보고서가 나온다.
버전이 올라감에 따라 사용 불가능해진 함수들도 있으니, 반드시 에러나 경고는 읽어봐야 한다.
 



메뉴상에는 도구 - 코드 업그레이드 라는 넘이 있는데..
이건 이렇게 프로젝트 단위가 아닌
특정 소스코드를 붙여넣고 그것에 대해서는 업그레이드(마이그레이션) 해주는 것으로 보인다.

그리고 역설적이게도... ocx와 같은 구성요소들이 없기 때문에
어짜피 변환을 해주려고 해도 Visual Studio 6을 깔아야 하는 아이러니한 상황 -_-



 
Posted by 구차니
Microsoft/Visual Studio2011. 3. 30. 22:55
비쥬얼 스튜디오에서 아무생각없이 프로젝트를 생성하고
openGL 설정을 하고 컴파일을 하는데 아래와 같은 에러가 발생했다.

링크하고 있습니다...
MSVCRTD.lib(crtexew.obj) :
error LNK2019: _WinMain@16 외부 기호(참조 위치: ___tmainCRTStartup 함수)에서 확인하지 못했습니다.
C:\orbit\Debug\orbit.exe : fatal error LNK1120: 1개의 확인할 수 없는 외부 참조입니다.

아무튼 프로젝트를 생성할때 보면
"Win32 프로젝트" 와


"Win32 콘솔 응용 프로그램" 으로 나뉘는데


Win32 프로젝트는 WinMain() 이 entry 포인트이기 때문에 위와 같은 에러가 발생한다.
정말 독립된 프로그램을 작성한다면 "Win32 콘솔 응용 프로그램"을 선택해야 한다.

Posted by 구차니