programing

SQL Server 복제 프로젝트에서 "잘못된 형식의 프로그램을 로드하려고 했습니다" 오류가 발생함

closeapi 2023. 5. 11. 21:27
반응형

SQL Server 복제 프로젝트에서 "잘못된 형식의 프로그램을 로드하려고 했습니다" 오류가 발생함

정확한 오류는 다음과 같습니다.

'Microsoft' 파일 또는 어셈블리를 로드할 수 없습니다.SqlServer.복제, 버전=9.0.242.0, Culture=중립, 공개 키Token=89845dcd8080cc91' 또는 해당 종속성 중 하나입니다.잘못된 형식의 프로그램을 로드하려고 했습니다.

저는 최근에 이 프로젝트를 두 달 동안 다른 프로젝트로 옮겼다가 다시 시작했습니다.이전에는 완벽하게 작동했고, 모든 참고 자료를 이중으로 확인했습니다.

아래의 baldy에 의한 답변은 정확하지만 앱풀에서 32비트 응용프로그램을 활성화해야 할 수도 있습니다.

출처: http://www.alexjamesbrown.com/uncategorized/could-not-load-file-or-assembly-chilkatdotnet2-or-one-of-its-dependencies-an-attempt-was-made-to-load-a-program-with-an-incorrect-format/

로컬 컴퓨터(Vista 64비트 실행)에서 응용 프로그램을 실행하도록 설정하는 동안 다음 오류가 발생했습니다.

어셈블리를 할 수 .ChilkatDotNet2또는 그 종속성 중 하나.잘못된 형식의 프로그램을 로드하려고 했습니다.

분명히, 그 애플리케이션은 ChilKat 구성 요소를 사용하지만, 우리가 사용하는 버전은 32비트 버전일 뿐입니다.

이 오류를 해결하기 위해 IIS의 앱 풀을 32비트 응용 프로그램을 허용하도록 설정했습니다.IIS 관리자를 열고 앱 풀을 마우스 오른쪽 단추로 클릭한 다음 고급 설정을 선택합니다(아래 참조).

여기에 이미지 설명 입력

그런 다음 "32비트 응용프로그램 사용"을 "참"으로 설정합니다.

여기에 이미지 설명 입력

다 끝냈어!

해결책을 찾았습니다.최근에 컴퓨터를 Windows 2008 Server 64비트로 업그레이드했습니다.Sql 서버.복제 네임스페이스는 32비트 플랫폼용으로 작성되었습니다.프로젝트 빌드 속성에서 대상 플랫폼을 X86으로 설정하기만 하면 다시 실행할 수 있습니다.

의 속성 을 웹프젝트속페플대랫값상다을로 합니다.Any CPU.

여기에 이미지 설명 입력

IIS -> 응용 프로그램 풀 -> 고급 설정 -> 32비트 응용 프로그램 사용

최근 Visual Studio에서 코드를 실행할 때 문제가 발생했습니다.▁do니▁to▁in▁need해야▁you를 해야 합니다.
TOOLS > OPTIONS > Projects and Solutions > WEB PROJES에서 "WEB 사이트 및 프로젝트에 IIS Express 64비트 버전 사용"을 확인합니다.

ASP에서 이 오류가 발생하는 사용자를 위한 것입니다.비주얼 스튜디오 자체 내 NET MVC 3 프로젝트:

ASP에서.제가 작업 중인 NET MVC 3 앱, 마이크로소프트에 대한 참조를 추가하려고 했습니다.SqlServer.배포 서버에서 누락된 문제를 해결하기 위해 프로젝트에 BatchParser를 배치합니다. (우리 앱은 SMO를 사용합니다. 올바른 해결 방법은 배포 서버에 SQL Server Native Client 및 기타 몇 가지를 설치하는 것이었습니다.)

BatchParser에 대한 참조를 제거한 후에도 "시도가 발생했습니다.모든 ASP에서 BatchParser DLL을 참조하는 오류입니다.NET MVC 3페이지를 열었더니, 그 에러 뒤에 수십 개의 페이지 파싱 에러가 발생했습니다.

이러한 경우 파일 검색을 수행하여 DLL이 프로젝트의 \bin 폴더 중 하나에 여전히 있는지 확인합니다.재구성을 수행하더라도 Visual Studio가 모든 \bin 폴더의 모든 항목을 지울 필요는 없습니다.제가 빈에서 DLL을 삭제하고 다시 빌드했을 때 오류가 사라졌습니다.

이것은 IIS Express에 대항하는 윈도우 10의 MVC5 앱에서 사용되었습니다.저의 해결책은 다음과 같습니다.

  • 도구 =>
    • 옵션 =>
      • 프로젝트 및 솔루션 =>
        • 웹 프로젝트 =>
          • 웹 사이트 및 프로젝트에 64비트 버전의 IIS Express 사용

32비트(참)로 변경하면 작동합니다.

이 길이는 0보다 작을 수 없습니다.매개 변수 이름: iis 서버 구성의 길이 문제는 SQL 서버 이름 및 서버 이름과 같이 web.config 파일의 연결 문자열을 변경하고 iis를 다시 시작한 다음 작동하는 페이지를 로드합니다.

오류가 발생할 때 Visual Studio 2012에서 게시하는 경우 게시 마법사에서 "게시 중인 컴파일" 옵션의 선택을 취소합니다.

게시 중 사전 컴파일 선택 취소

Windows 양식 응용 프로그램에서 프로젝트->속성->빌드->32비트 선택 확인란을 마우스 오른쪽 버튼으로 클릭합니다.모두 감사합니다

  1. C:에 있는 temp test 디렉토리를 삭제합니다.\사용자(사용자)\AppData\로컬\온도\VisualStudio테스트 탐색기 확장\

  2. Visual Studio에서 모든 프로젝트를 x64로 설정

  3. 기본 프로세서 아키텍처를 x64(테스트/테스트 설정/기본 프로세서 아키텍처)로 설정합니다.

솔루션 빌드 파일을 정리해야 합니다.이것이 도움이 되길 바랍니다!

에서 프로젝트 속성의 대상 프레임워크 변경.NET Framework 4.7.1에서 4.6.2까지 지원했습니다.

언급URL : https://stackoverflow.com/questions/41449/i-get-a-an-attempt-was-made-to-load-a-program-with-an-incorrect-format-error-o

반응형