|
안녕하세요.. 이필호입니다.
DOS에서 사용하던 그래픽루틴은 기본적으로 Windows에서는 사용할 수 없습니다.
이유는 Windows는 기본적으로 응용프로그램에서 그래픽카드를 직접제어할 수 없습니다.
그렇기 때문에 Windows에서 그래픽카드제어를 OS를 통해서 하기 때문에 당연히 속도가 늦을수 밖에 없지요.
그래서 게임관련 프로그램들이 그래픽카드를 직접 제어하기 위해서 DirectX 를 사용하는 것이지요..
DirectX는 그래픽/사운드카드를 직접제어할 수 있게 도와주는 라이브러리입니다.
결론적으로,
BGI관련 함수는 Windows에서는 전혀 쓸모없는 함수입니다. 즉, 동작하지 않는 함수가 되는것이지요..
DOS프로그램을 만드실때는 그래픽관련 함수는 배우셔도 Windows에서는 동작하지 않으니까..
만일 그래픽관련 함수를 공부하시고 싶으시면 Windows환경에서 DirectX를 공부하시기 바랍니다.
도움이 되셨길 바랍니다.
우서기 님이 쓰신 글 :
: 안녕하세요.
: BGI파일이 컴파일러가 있는 현재 디렉토리에 있는 경우에는 ""를 적어 주었는데 왜 컴파일은 되는데
: 실행이 안되는지 잘 모르겠습니다.
: 에러는 "use initgraph"라고 나오는데요..
: 제가 1024*768모드를 사용중이라 그런건가요??
: 알려주시면 감사하겠습니다.
:
: #include <stdio.h>
: #include <graphics.h>
:
: main()
: {
:
: int gr=DETECT,mode;
: char ss[20]="This is sample";
:
: initgraph(&gr,&mode,"");
: outtext(ss);
:
: outtext("Turbo-C graphic");
: outtextxy(100,40,"TEXT STYLE is...");
:
: settextstyle(TRIPLEX_FONT,HORIZ_DIR,4);
: outtextxy(100,50,"This is TRIFLEX");
:
: settextstyle(SMALL_FONT,HORIZ_DIR,1);
: outtextxy(100,20,"small");
:
: settextstyle(SANS_SERIF_FONT,HORIZ_DIR,2);
: outtextxy(100,140,"This is sans serif");
:
: settextstyle(TRIPLEX_FONT,VERT_DIR,8);
: outtextxy(400,10,"OK TRIFLEX");
:
: settextstyle(GOTHIC_FONT,HORIZ_DIR,3);
: outtextxy(155,185,"This is gothic");
:
: getch();
: closegraph();
:
: }
:
:
:
:
|