MSBuild 명령 줄을 사용하여 VB .NET 프로젝트를 컴파일하는 중 오류가 발생합니다. 완벽하게 정상적으로 devenv를에서 작품 실행 : 문제MSBuild 컴파일 오류 이상한
error BC30518: Overload resolution failed because no accessible 'Invoke' can be called with these arguments:
라인 :
Windows.Application.Current.Dispatcher.Invoke(Sub() InteractionManager.Current.DisplayException((DirectCast(e.ExceptionObject, Exception))))
왜 MSBuild에서이 balking됩니다 이것 devenv를/비주얼 스튜디오가없는 경우? 그리고 왜 이것이 전혀 문제가되는 것입니까? 괜찮아 보입니다.이 행에 대해 흥미로운 점은 Invoke가 Delegate 클래스 객체 (강력한 형식의 델리게이트가 아닌)를 사용한다는 것입니다. C#에서는 람다를 사용할 수 없습니다. 나는 VB .NET에서 지금있는 표현 (나는 새로운 액션 뭔가를해야 할 것 (() => ...)
일반적인 문제는 자세한 정보 로깅 오류를 로깅하고 실제로 호출되는 명령 줄 등을 확인하십시오. 자신이 생각하는 버전의 VB 컴파일러를 호출하지 않는다는 것을 알 수 있습니다. – AakashM
c : \ WINDOWS \ Microsoft.NET \ Framework \ v4.0.30319 \ Vbc.exe (예상대로) 실행 – Jeff
MSBuild를 통해 sln이 호출 될 때 WindowsBase 및 PresentationCore 참조를 요청하는 프로젝트가 많이 있습니다. 그러나 devenv에서 달리면 안됩니다. 참조를 추가하는 것만으로도 설명 할 수없는 문제가 해결 된 것 같습니다. – Jeff