• 카테고리
    • 전체 글

    • 카테고리1
    • 카테고리2
    • 카테고리3
    • 카테고리4
  • 태그
  • 방명록

'2022/06/29'에 해당되는 글 1건

  • 2022.06.29 "다른 프로세서를 대상으로 합니다" 오류 수정

"다른 프로세서를 대상으로 합니다" 오류 수정

카테고리 없음 2022. 6. 29. 16:25

.NET Framework 개발 중, System.Data 라는 참조를 했을때,
Visual Studio 2022로 빌드를 하면, 아래와 같은 메시지가 계속 나온다.

1>CSC : warning CS8012: 참조된 어셈블리 'System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'이(가) 다른 프로세서를 대상으로 합니다.

내가 만든 프로그램이 x86 으로 빌드를 할 때 이런 현상이 자주 발생한다.

그런데 Visual Studio 2022로 바뀌면서 제일 큰 변화가 바로 x64 기본 지원이다.
아예 IDE 자체가 x64 기반으로 동작해서 매우 빠르게 잘 컴파일되고 작동하는데,
유독 x86 전용 프로젝트만 돌리면 저런 오류가 발생한다.

문제의 원인은 아무래도 System.Data 와 같은 Assembly를 기본 참조하는 위치가 x64 들이 담긴 곳을 먼저 뒤져서 연결하다보니 위와 같은 문제가 발생하는 것 같다.

Visual Studio 내에서 해결하는 방법을 나는 아직 발견하지 못했다.
이 문제를 해결하려면, csproj 파일 자체를 수정해야 한다.

Notepad 혹은 Notepad++ 같은 텍스트 편집기로 해당 csproj 파일을 연다.

그리고 문제가 발생한 Assembly를 찾아 <Reference ... > 부분을 찾는다.

해당 부분을 아래와 같이 수정한다.

<Reference Include="System.Data" >  
	<HintPath>C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Data.dll</HintPath>
</Reference>

추가할 부분이 바로 HintPath 부분이다.
x64 DLL 대신 Load할 x86 DLL이 담긴 위치를 직접 꽂은 것이다.
저렇게 컴파일하면 x86 DLL 연결에 문제가 있어, 에러가 나는 부분이 깔끔하게 수정된다.

만일 컴파일 중에 다른 DLL 에서도 저렇게 발생하면, 해당 DLL이 어디 있는지 체크해서 Hint에 추가한다.

다만 주의할 점은 공동 팀 작업을 할 때, 자신만의 고유 폴더에 위치한 경로를 Hint에 담지 말아야 한다.
위의 C:\Windows\Microsoft.NET\Framework\v2.0.50727 이라는 폴더는 최소한 .NET Framework 2.x, 3.x 대 개발자라면  100% 저 폴더가 있다. 만일 그렇게 구성하기 힘들다면 아예 프로젝트 폴더에 두고, ..\xxx 식으로 폴더를 잡아주어도 된다.

 

728x90
저작자표시
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

  • «
  • 1
  • »
250x250

블로그 내에 소스 코드 삽입 이사온 기념 스킨도... RSS 전문 기능 비활성화 관련. 스킨 바꾸어 보았습니다. 서버 파일 정리 좀 했습니다.

«   2022/06   »
일 월 화 수 목 금 토
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30

불만 매뉴얼 2010 Google Apps Engine 개발환경 java Azure windows SharePoint 친구 수 지름신 Visual Studio Tutorial MOSS 2007 moss Buscuit 비스킷 me2photo 오류 e-book me2sms 좀 협업 WSS me2dayzm 인터파크 twi2me 블로그 것

  • Total :
  • Today :
  • Yesterday :

Copyright © 2015-2025 Socialdev. All Rights Reserved.

Copyright © 2015-2025 Socialdev. All Rights Reserved.

티스토리툴바