2012-08-01 3 views
1

프로그램을 32 비트에서 모든 CPU로 변경하려고합니다. 이 프로그램은 C# .NET 3.5에 있습니다.모든 CPU에서 TaskScheduler를 사용할 때 BadImageFormatException이 발생했습니다.

우리는 Windows 작업 스케줄러 COM 래퍼를 사용하고 있습니다.

응용 프로그램은 컴파일하지만 우리는 우리가 다음과 같은 오류지고 64 비트 플랫폼에서 실행하려고하면

BadImageFormatException: Could not load file or assembly 'Interop.TaskScheduler, Version=1.0.0.0, Culture=neutral, PublicKeyToken=4b71cab8d8e4499f' or one of its dependencies. An attempt was made to load a program with an incorrect format.

UPDATE를 : 우리는 같은 TaskScheduler와 함께, 모든 CPU에 새로운 C# 프로젝트를 생성 참조 및 매우 간단한 2 줄 코드 (TaskSchedulerClass의 인스턴스를 만들고 콘솔에 줄을 작성) 동일한 64 비트 플랫폼에서 실행 했으므로 작동했습니다. 그러나 전체 응용 프로그램은 여전히 ​​작동하지 않습니다. 도움 주셔서 감사합니다.

답변

4

COM interop 어셈블리 이후로는 32 비트에 불과합니다. 프로젝트를 32 비트로 유지해야합니다.

0

당신의 assemly는 x64 버전 또는 대체 어셈블리를 찾을 수, 32 비트 일을 시도 할 수 있습니다