2

PCにAndroid用モノをインストールしています

インストーラーが完了したら、Mono for Android 用の Xamarin インストーラーをインストールしました

MonoDevelop を開いて新しい Android プロジェクトを作成したところ、このエラーが発生しました

> C:\Program Files
> (x86)\MSBuild\Novell\Novell.MonoDroid.Common.targets(2,2): Error
> MSB4018: The "CopyGeneratedJavaResourceClasses" task failed
> unexpectedly.
> 
> System.InvalidOperationException: This implementation is not part of
> the Windows Platform FIPS validated cryptographic algorithms.
> 
>    at System.Security.Cryptography.SHA1Managed..ctor()
> 
>    at Xamarin.Android.Tasks.MonoAndroidHelper.HashFile(String
> filename)
> 
>    at Xamarin.Android.Tasks.MonoAndroidHelper.HasFileChanged(String
> source, String destination)
> 
>    at Xamarin.Android.Tasks.MonoAndroidHelper.CopyIfChanged(String
> source, String destination)
> 
>    at Xamarin.Android.Tasks.CopyGeneratedJavaResourceClasses.Execute()
> 
>    at
> Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
> 
>    at
> Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost
> taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost
> taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask,
> Boolean& taskResult) (MSB4018) (rrr)

Visual Studio 2010 で新しい Android プロジェクトを作成しようとしたときに、このエラーも発生しました。助けてください!

4

1 に答える 1

2

お使いのコンピューターで FIPS 140 準拠が有効になっているようです。これにより、非 FIPS 認定アルゴリズムの実行が禁止されます。

たとえば、MicrosoftSHA1Managedは認定されていませんが、CryptoAPI を使用SHA1CryptoServiceManagerしているため問題ありません。実際には、プラットフォームとバージョンに依存します。

簡単な回避策は、コンピューターの FIPS 準拠をオフにすることです (レジストリ キーのメモを参照してください)。

于 2012-12-27T03:25:00.140 に答える