윈도우 프로그래밍을 20년 만에 해보는 것 같습니다.
기존에 누군가가 작업한 결재 모듈을 수정하는데 ... 넘어야 할 산이 너무 많습니다.
작업용 노트북을 옮기면서 두번째 삽질을 하고 있어서 기록으로 남겨둡니다.
아래 애러는 USB 관련 usbspec.h 파일에서 발생하는데 _MP 라는 구조체가 다른 곳에서 이미 선언되어 있어서 발생하는 것 같습니다.
기본적으로 윈도우에서 제공하는 헤더 파일 같은데 이것을 수정해도 괜찮은지 모르겠습니다. @.,@
파일의 위치는
C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared\usbspec.h
안좋은 방법이긴 하지만... 일단 결과는 얻어야 하니까...
이미 _MP 가 선언되어 있으면 해제 하고 다시 선언하도록 세줄을 추가 했습니다.
Notepad++ 같은 텍스트에디터를 관리자 권한으로 실행 해야 수정 후 저장 할 수 있습니다.
해당 오류는 탈출 했지만... 다른 에러가 남아 있습니다. ㅠㅠa
ChatGPT 에게 물어봐야 겠습니다.
※ 추가
아래 오류는 _ftime 라는 함수에서 발생 했는데 안정성이 떨어지기 때문에 안전한 함수인 _ftime64_s 를 사용하라고 합니다.
비추천으로 stdafx.h 파일에 _CRT_SECURE_NO_WARNINGS 선언을 추가 하라고 나옵니다.
#define _CRT_SECURE_NO_WARNINGS
#include <sys/timeb.h>
#include <time.h>
내가 카피한 기존 소스에는 없는데?...
찾아~찾아~ 어디 있을까?
이전 개발자는 프로잭트 속성에 아예 박아 버렸습니다.
1. Visual Studio 솔루션 탐색기에서 프로잭트 우클릭 -> 속성(Properties)
2. 왼쪽 메뉴 C/C++ > Perprocessor(전처리기)
3. Preprocessor Definitions(전처리기 정의)에 항목 추가 기존에 내용이 있으면 ; 로 구분
윗쪽 Configuration: 에 Debug->Release 바꿔 가면서 추가 확인해야 합니다.
아~~ 어렵다.
'C&C++' 카테고리의 다른 글
[MFC] 서비스 등록 (0) | 2025.07.02 |
---|