윈 도 우 C++ 고수님. 도움 좀 부탁드립니다
2021.09.22 12:21
윈도우 10으로 넘어오면서 프로그래밍 막히는 부분이 점점 많아지네요 -_-;;;;
레지스트리 이용하자니 프리뷰 빌드에선 안되는 경우도 있고
윈10 api 이용하자니 코드가 지저분하게 길어지는 문제가 있더군요.
윈도우 10 보다 아래 버전인지 아닌지 C++로 쉽게 알아내는 방법 없을까요?
C++ 전문가이신 분 도움 좀 부탁드립니다.
댓글 [6]
-
내꼬 2021.09.22 13:06 -
harman777 2021.09.22 14:38
제가 C++로 작업해야 해서요 -_-;;;;
감사합니다.
-
kernel 2021.09.22 14:11
Windows OS 내부구조를 알고있으면...
아래와 같이 C++ 람다 이용해서 간단하게 알아낼 수 있죠.
if (auto _{[](){return (*(int*)(0x7FFE026C)) - 012 < 0;}};_())
printf( "윈도우즈10 보다 아래 버전 임\n" );
else
printf( "윈도우즈10 또는 그 이상 버전 임\n" );
-
kernel 2021.09.22 14:15
참고로 위 코드는 32비트와 64비트에서 모두 동작함.
-
kernel 2021.09.22 14:17
VC++ 컴파일러 옵션에서 랭귀지 스펙을 C++17 이상으로 설정해서 컴파일하면 됌.
-
harman777 2021.09.22 14:42
감사합니다. kernel님.
정상 동작하는걸 확인했습니다.
원리는 모르겠지만 잘되네요. 역시 고수님. ^^;;;;;;
정말 감사합니다.
번호 | 제목 | 글쓴이 | 조회 | 등록일 |
---|---|---|---|---|
[공지] | 질문과 답변 게시판 이용간 유의사항 | gooddew | - | - |
91004 | 윈 도 우| 윈도우11 올리고 하드디스크 핫플러그 hot plug가 안되네요! [2] | 아파야낫는 | 320 | 10-07 |
91003 | 윈 도 우| 윈도우 11 업그레이드 사양 [8] | dkslah123 | 1040 | 10-07 |
91002 | 소프트웨어| Internet Download Manager 인증 문제 [3] | 홍은동초짜 | 548 | 10-07 |
91001 | 윈 도 우| 윈11 그림판 설치경로 어딘지 아시는분~ [15] | 창가에앉아 | 1520 | 10-07 |
91000 | 윈 도 우| 윈도우11 맘에 안드네염.. 단축키는 왜 바꾼거야!!!! [17] | 창가에앉아 | 630 | 10-07 |
90999 | 윈 도 우| 윈도우11인데.. 왜 나는 그림판에 변화가 없을까..ㅠㅅㅠ [10] | 창가에앉아 | 607 | 10-07 |
90998 | 소프트웨어| 일반인인데 오피스365를 싸게 사용하는 제품이 있을까요? [5] | brucex | 411 | 10-07 |
90997 | 윈 도 우| Win10 win11멀티부팅 질문드려봅니다 [6] | photo | 567 | 10-07 |
90996 | 윈 도 우| DISM은 pe부팅상태에서만 wim생성할 수 있나요? [4] | nadaeri | 205 | 10-07 |
90995 | 윈 도 우| 윈11에 대해서 질문 올립니다!!... [2] | 지구별여행 | 290 | 10-07 |
90994 | 윈 도 우| 2세대3세대 컴퓨터. [2] | 테츠로 | 519 | 10-07 |
90993 | 윈 도 우| 윈도우11 프리징 잇는것 같은데 저만 그런가요?? [6] | FanTaG | 771 | 10-07 |
90992 | 윈 도 우| 윈11 기본 램점유율좀 알려주실분? [2] | 컴알못러 | 273 | 10-07 |
90991 | 윈 도 우| TPM 없는 구형노트북 윈10 -> 윈11 iso 업데이트 가능한... [2] | 컴알못러 | 819 | 10-07 |
90990 | 기 타| 그래픽 질문인데요 [1] | 파인플러터 | 158 | 10-06 |
90989 | 소프트웨어| Win10XPE에서 Chrome 최신 버전을 받을 수가 없네요 [1] | ViArPl | 360 | 10-06 |
90988 | 기 타| 오토잇 코드 작성 [4] | 못말리는짱 | 174 | 10-06 |
90987 | 하드웨어| 램 사용유뮤 호환 질문이에요 [4] | 버프 | 169 | 10-06 |
90986 | 윈 도 우| 뤙도우11 에서 파일이동... | 해오름 | 196 | 10-06 |
90985 | 윈 도 우| efi 파티션 만들어주는 프로그램이 있나요? [9] | 톰과제리 | 509 | 10-06 |
프리뷰에서 안되는 경우는 레지가 삭제 되었거나 다른 경로로 바뀌었을 경우
api 이용시 코드가 많아지는 것 또한 맞는 말이구요.
C++로 작성하면 더 좋겠지만 단순 한것 하나 만들려고 해도 많은 불편함이 있어 저는 적응을 못해 c#으로 바꾸었습니다.
OS 버전 체크는 다양하지만 제 경우는 빌드넘버로 버전 체크 하였습니다.
Windows 10 - 릴리스 정보 | Microsoft Docs
Windows Version Numbers - Version and build numbers of Microsoft Windows (gaijin.at)