0

私のローカルシステムでは問題なく動作します。しかし、ライブサイトではありません。このコード ブロックを使用して、ckeditor で画像をアップロードします。ホスティング プロバイダーに電話しました。これらのコードは、中または高の信頼レベルで作成する必要があります。ホスティング会社は、完全な信頼レベルをサポートしていません。web.config で信頼レベルを完全に変更できれば、問題なく動作します。高または中の信頼レベルをサポートするこのコードを作成または変更するにはどうすればよいですか。

エラー: セキュリティ例外

説明: アプリケーションは、セキュリティ ポリシーで許可されていない操作を実行しようとしました。このアプリケーションに必要な権限を付与するには、システム管理者に連絡するか、構成ファイルでアプリケーションの信頼レベルを変更してください。

例外の詳細: System.Security.SecurityException: タイプ 'System.Security.Permissions.MediaPermission、WindowsBase、Version=3.0.0.0、Culture=neutral、PublicKeyToken=31bf3856ad364e35' のアクセス許可の要求が失敗しました。

public static ImageMedia Create(byte[] data)
{
    ImageMedia result = new ImageMedia();
    result._source = BitmapDecoder.Create(new MemoryStream(data), BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.None).Frames[0];
    result._data = data;
    try { result._copyright = ((BitmapMetadata)result._source.Metadata).Copyright; }
    catch (Exception) { }
    return result;
}
4

1 に答える 1

0

3.0 の方法には、完全な信頼が必要です。下位レベルのビットマップから情報を取得しようとすることができます

Bitmap MyPhoto =
    new Bitmap(@"myphoto.JPG");
PropertyItem[] props =
    MyPhoto.PropertyItems;
foreach (PropertyItem prop in props)
{
    MessageBox.Show(
        prop.Id.ToString());
}

詳細については、この記事を参照してください: http://www.developerfusion.com/article/84474/reading-writing-and-photo-metadata/

于 2013-06-23T17:35:35.970 に答える