Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >属性值无效- GDI+中发生一般错误

属性值无效- GDI+中发生一般错误
EN

Stack Overflow用户
提问于 2017-06-28 17:20:43
回答 1查看 396关注 0票数 1

我正在尝试运行一个有10年历史的C# Visual Studio项目

由于某些原因,我不能删除或编辑表单中的任何图像

如果在使用视图设计器时尝试编辑PictureBox的图像属性,则会收到“属性值无效”错误。详细信息框显示为"A generic error occurred in GDI+“。

即使更改PictureBox的大小也会触发相同的错误

尽管这并不重要,但下面是表单的代码。在我看来,这只是视图设计器中自动生成的代码:

代码语言:javascript
运行
AI代码解释
复制
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Threading;

namespace AppCliente.Vista
{
    public class frmLogin : System.Windows.Forms.Form
    {
        private System.Windows.Forms.PictureBox picLogin;
        private System.ComponentModel.Container components = null;

        private frmLogin()
        {           
            InitializeComponent();      
        }

        private void InitializeComponent()
        {
            this.picLogin = new System.Windows.Forms.PictureBox();
            ((System.ComponentModel.ISupportInitialize)(this.picLogin)).BeginInit();
            this.SuspendLayout();
            // picLogin
            // 
            this.picLogin.Location = new System.Drawing.Point(-1, -3);
            this.picLogin.Name = "picLogin";
            this.picLogin.Size = new System.Drawing.Size(264, 48);
            this.picLogin.TabIndex = 5;
            this.picLogin.TabStop = false;
            this.picLogin.Click += new System.EventHandler(this.picLogin_Click);       
            this.Controls.Add(this.picLogin); 
            ((System.ComponentModel.ISupportInitialize)(this.picLogin)).EndInit();

        }


        private void picLogin_Click(object sender, EventArgs e)
        {

        }
    }
}

这可能是什么原因造成的?

如果它有任何用处,如果我尝试编译项目,我会得到以下错误:

代码语言:javascript
运行
AI代码解释
复制
The "GenerateResource" task failed unexpectedly.
System.Runtime.InteropServices.ExternalException (0x80004005): A generic error occurred in GDI+.
   at System.Drawing.Image.Save(Stream stream, ImageCodecInfo encoder, EncoderParameters encoderParams)
   at System.Drawing.Image.Save(MemoryStream stream)
   at System.Drawing.Image.System.Runtime.Serialization.ISerializable.GetObjectData(SerializationInfo si, StreamingContext context)
   at System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.InitSerialize(Object obj, ISurrogateSelector surrogateSelector, StreamingContext context, SerObjectInfoInit serObjectInfoInit, IFormatterConverter converter, ObjectWriter objectWriter, SerializationBinder binder)
   at System.Runtime.Serialization.Formatters.Binary.WriteObjectInfo.Serialize(Object obj, ISurrogateSelector surrogateSelector, StreamingContext context, SerObjectInfoInit serObjectInfoInit, IFormatterConverter converter, ObjectWriter objectWriter, SerializationBinder binder)
   at System.Runtime.Serialization.Formatters.Binary.ObjectWriter.Serialize(Object graph, Header[] inHeaders, __BinaryWriter serWriter, Boolean fCheck)
   at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize(Stream serializationStream, Object graph, Header[] headers, Boolean fCheck)
   at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize(Stream serializationStream, Object graph)
   at System.Resources.ResourceWriter.WriteValue(ResourceTypeCode typeCode, Object value, BinaryWriter writer, IFormatter objFormatter)
   at System.Resources.ResourceWriter.Generate()
   at System.Resources.ResourceWriter.Dispose(Boolean disposing)
   at System.Resources.ResourceWriter.Close()
   at Microsoft.Build.Tasks.ProcessResourceFiles.WriteResources(ReaderInfo reader, IResourceWriter writer)
   at Microsoft.Build.Tasks.ProcessResourceFiles.WriteResources(ReaderInfo reader, String filename)
   at Microsoft.Build.Tasks.ProcessResourceFiles.ProcessFile(String inFile, String outFileOrDir)
   at Microsoft.Build.Tasks.ProcessResourceFiles.Run(TaskLoggingHelper log, ITaskItem[] assemblyFilesList, List`1 inputs, List`1 outputs, Boolean sourcePath, String language, String namespacename, String resourcesNamespace, String filename, String classname, Boolean publicClass, Boolean extractingResWFiles, String resWOutputDirectory)
   at Microsoft.Build.Tasks.ProcessResourceFiles.Run(TaskLoggingHelper log, ITaskItem[] assemblyFilesList, List`1 inputs, List`1 outputs, Boolean sourcePath, String language, String namespacename, String resourcesNamespace, String filename, String classname, Boolean publicClass, Boolean extractingResWFiles, String resWOutputDirectory)
   at Microsoft.Build.Tasks.GenerateResource.Execute()
   at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
   at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext() AppCliente
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-29 14:20:41

在将目标框架更改为.Net 2.0后,我开始收到更有意义的错误消息:各种形式的.resx文件都已损坏,因此删除它们就解决了问题

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44808943

复制
相关文章
图片在保存的时候===》出现这个异常:GDI+ 中发生一般性错误
异常处理汇总-后端系列 http://www.cnblogs.com/dunitian/p/4523006.html 一般这种情况都是没有权限,比如目录没有创建就写入,或者没有写入文件的权限 我的是目
逸鹏
2018/04/11
1.6K0
图片在保存的时候===》出现这个异常:GDI+ 中发生一般性错误
【排查解决】System.Runtime.InteropServices.ExternalException (0x80004005): GDI+ 中发生一般性错误
  今天项目发布上线,发布到正式环境验证功能的时候忽然方向之前做的一个图片合成的功能报错了提示:System.Runtime.InteropServices.ExternalException (0x80004005): GDI+ 中发生一般性错误。也就是说应用的System.Drawing中的Bitmap的这个类中的属性出了问题,这到底是什么问题呢?首先我本地开发,测试环境都可以正常的,为什么已发布到正式环境就有问题了呢,到底是环境问题还是配置权限的问题呢?
追逐时光者
2021/06/10
2.1K0
C#-GDI+中发生一般性错误的解决办法
MSDN 解释如下: Bitmap 对象或一个 图像 对象从一个文件, 构造时该文件仍保留锁定对于对象的生存期。 因此, 无法更改图像并将其保存回它产生相同的文件。 替代方法 创建非索引映像。 创建索引映像。 这两种情况下, 原始 位图 上调用 Bitmap.Dispose() 方法删除该文件上锁或删除要求, 流或内存保持活动。 创建非索引图像 即使原始映像被索引格式中该方法要求新图像位于每像素 (超过 8 位 -) -, 非索引像素格式。 此变通方法使用 Graphics.DrawImage() 方法来将映像复制到新 位图 对象: 构造从流、 从内存, 或从文件原始 位图 。 创建新 位图 的相同大小, 带有是超过 8 位 – – 像素 (BPP) 每像素格式。 使用 Graphics.FromImage() 方法以获取有关二 位图 Graphics 对象。 用于 Graphics.DrawImage() 绘制首 位图 到二 位图 。 用于 Graphics.Dispose() 处置是 图形 。 用于 Bitmap.Dispose() 是首 位图 处置。 创建索引映像 此解决办法在索引格式创建一个 Bitmap 对象: 构造从流、 从内存, 或从文件原始 位图 。 创建新 位图 具有相同的大小和像素格式作为首 位图 。 使用 Bitmap.LockBits() 方法来锁定整个图像对于两 Bitmap 对象以其本机像素格式。 使用 Marshal.Copy 函数或其他内存复制函数来从首 位图 复制到二 位图 图像位。 使用 Bitmap.UnlockBits() 方法可以解锁两 Bitmap 对象。 用于 Bitmap.Dispose() 是首 位图 处置。 创建非索引图像,例如:
kdyonly
2023/03/03
1.2K0
GDI+ 读取jpg图片每个像素的值
// 读取jpg图像像素rgb值.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> #include <fstream> #include <string> #include <windows.h> #include <gdiplus.h> #pragma comment(lib, "gdiplus.lib") using namespace std; using namespace Gdiplus; int main()
流川疯
2022/11/29
1.2K0
GDI+ 读取jpg图片每个像素的值
Java中String转换为JSONArray发生错误[通俗易懂]
第一种解析的字符串结构 keywords:[{keyword=关键字,matchType=1},{keyword=关键字,matchType=1}]
全栈程序员站长
2022/08/31
5.8K0
Android为属性组件动画无效
本来我的代码是这样的 然后发现这动画只能在窗体onCreate的时候使用有效。 放在点击事件之类的就不行了。 后经百度发现需要开始动画而不是设置动画 carImg.startAnimation(animation);
SingYi
2022/07/13
8030
Android为属性组件动画无效
android:imeOptions属性详解以及无效处理
软键盘的Enter键默认显示的是“完成”文本,我们知道按Enter建表示前置工作已经准备完毕了,要去什么什么啦。比如,在一个搜索中,我们输入要搜索的文本,然后按Enter表示要去搜索了,但是默认的Enter键显示的是“完成”文本,看着不太合适,不符合搜索的语义,如果能显示“搜索”两个字或者显示一个表示搜索的图标多好。事实证明我们的想法是合理的,Android也为我们提供的这样的功能。通过设置android:imeOptions来改变默认的“完成”文本。这里举几个常用的常量值:
再见孙悟空_
2023/02/10
2.5K0
android:imeOptions属性详解以及无效处理
transition属性值
transition-property是用来指定当元素其中一个属性改变时执行transition效果,其主要有以下几个值:none(没有属性改变);all(所有属性改变)这个也是其默认值;indent(元素属性名)。当其值为none时,transition马上停止执行,当指定为all时,则元素产生任何属性值变化时都将执行transition效果,ident是可以指定元素的某一个属性值。其对应的类型如下:
全栈程序员站长
2022/11/17
1.6K0
transition属性值
CSS中字体和文本关键属性值
在这里,有些字体有斜体italic属性,但有些字体却没有italic属性,oblique是让没有italic属性的字体也能够有斜体效果 。
岳泽以
2022/10/26
1.2K0
CSS中字体和文本关键属性值
小程序中setData修改属性值
1.修改对象属性 1>第一种 changePerson:function(e){ var str = 'person.name'; this.setData({ [str]: 'fxjzzyo' }) }, 2>第二种 changePerson:function(e){ this.setData({ 'person.name': 'fxjzzyo' }) }, 2.修改数组属性 this.setData({ ["array[" +
leader755
2022/03/07
1.2K0
在 Vue.js 中通过计算属性动态设置属性值
前面我们已经陆续介绍了 Vue.js 框架的常用基本语法,现在,我们可以结合这些语法实现一个小功能:展示一个 Web 框架列表,并支持新增框架。
学院君
2023/03/03
12.9K0
在 Vue.js 中通过计算属性动态设置属性值
ConstraintLayout 下 layout_marginLeft 属性无效问题[通俗易懂]
ConstraintLayout 下 layout_marginLeft 属性无效问题
全栈程序员站长
2022/09/06
6460
Mybatis 批量更新无效字符的错误
使用<foreach></foreach> 批量insert时报错 ORA-00911: 无效字符的错误
三哥
2018/12/24
1.9K0
HTML5 download属性无效的问题
如果url指向第三方资源,download会失效,表现和不使用download时一致——浏览器能打开的文件,浏览器会直接打开,不能打开的文件,会直接下载。浏览器打开的文件,可以手动下载。
javascript.shop
2019/09/04
5K0
Spring框架中 Bean对象属性值的注入
注意:如果一个Bean对象同时存在set注入和构造注入两种方法,Spring在为Bean对象属性赋值时,会先使用set注入方式为属性赋值,再使用构造注入为Bean对象属性赋值。
运维搬砖
2018/12/26
4.2K0
〔连载〕开始建立你自己的报表监听器
虽然内建的ReportListener类(甚至包括在FFC中提供的那些listener)有着大量的功能,但可以肯定你最终还是会需要做更多没有包含在其中的功能。幸运的是,你可以通过派生ReportListener或者_ReportListener来建立你自己的listener,并添加你需要的功能。本章的余下部分将探索一些用report listener可以实现的东西。
加菲猫的VFP
2022/04/07
3780
Django模板引擎中变量作为属性值调用
作者:matrix 被围观: 2,268 次 发布时间:2019-05-16 分类:Python 零零星星 | 4 条评论 »
HHTjim 部落格
2022/09/26
1.7K0
Django模板引擎中变量作为属性值调用
Android 中的属性动画 --- 2(插值器)
在上一篇文章中,我们使用 ValueAnimator 这个类来实现了操作 View 对象的 height 属性从而实现了动画形式的显示和隐藏 View 控件。我们知道 ValueAnimator 这个类只用于根据当前动画的完成度和按照一定的“规律”产生一系列有规律的数字,事实上,属性动画的核心部分也就是这个,我们可以不断获取 ValueAnimator 产生的数字用于操作 View 的属性从而完成动画。那么 ValueAnimator 按照什么“规律”来产生一系列的数字呢?其实这个规律就是插值器。我们在定义属性动画的时候,需要通过setDuring 方法来为属性动画指定完成这个动画的时间,那么插值器就是用不同的时间因子产生不同的值,说白了插值器就像是一个公式,根据输入来转换成对应的输出。不同的插值器下,每个单位时间所达到的变化值也是不一样的,如果说使用线性插值器,那么每个单位时间内变化的值都一样。这就好比在规定的时间内跑步一样,有些人一开始跑的快,后面跑的慢,有些人一开始跑得慢,后面跑得快,但是大家都能在规定的时间里面到达终点。插值器就相当于描述跑步速度的对象。 Android 属性动画框架给我们提供了一些插值器和其对应的变化曲线:
指点
2019/01/18
1.7K0
Android 中的属性动画 --- 2(插值器)
反射获取属性字段及属性值
上篇文章我们可以通过自己的类加载器加载指定类了,在获取指定类后我们需要拿到类属性名称及类属性的值。 获取属性字段: public static List<Field> getFields(String
春哥大魔王
2018/07/23
4.4K0
反射获取属性字段及属性值
c# GDI+简单绘图(一) c# GDI+简单绘图(一)
  最近对GDI+这个东西接触的比较多,也做了些简单的实例,比如绘图板,仿QQ截图等.
vv彭
2021/09/10
1.9K0
c# GDI+简单绘图(一)
    



c# GDI+简单绘图(一)

相似问题

ExternalException: GDI+中发生一般错误

20

位图保存gdi+中发生一般错误

12

GDI+中发生一般错误。如何修复?

110

asp.net : GDI+中发生一般错误

22

保存映像时发生一般的GDI+错误

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档