在调用 Database.Insert(..) 时,块名与德语突变元音的问题
您好,上周,我们将AutoCAD版本从2011年更改为2014年。
但是现在我发现调用函数数据库。Insert()
(定义public ObjectId Insert(string block name,Database dataBase,bool preserveSourceDatabase);")
以一个德语变异元音字母(" uncü")开头,抛出一个" FatalExecutionEngineError "。
变异元音的位置是否晚于第一个元音。
这种效果在2011年不会出现。净3.5。,起初改为2014年后用。NET 4.0抛出这个异常。
来自函数的代码:
在throw和cath异常中,我检查了变量" blockName "和" blockPfadName "的值。Halde”,在第350行抛出“FatalExecutionEngineError”后,将值从
berTage。halde“to”停泊处。哈尔德”。
这个错误的原因是什么?问候马里奥
**** Hidden Message ***** 您的问题可能部分源于Visual Studio、. NET和Acad版本的特定组合,以及当API中有一个合理的函数用于手头任务时,您试图单独滚动它的事实:
public静态字符串Autodesk.AutoCAD.DatabaseServices.SymbolUtilityServices.GetBlockNameFromInsertPathName(string)
。
更重要的是,尝试
public静态ullAutodesk.AutoCAD.DatabaseServices.SymbolUtilityServices.ValidateSymbolName(string name, bool lowVerticalBar)
,如果验证不成功,
会抛出异常。 你好,
我找到了一个解决方法:
块被插入一个格式良好的虚拟名称,并在“...插入”
我通过“acBTRId”获取块作为“BlockTableRecord”并将他的“Name”设置为realname。
这很好。
敬马里奥 很高兴最近看到你的几条帖子,希望你能回来给我们带来更多的智慧。希望一切都好。
您好,
很抱歉重播太晚了,我要去度假几天
我必须测试两个函数:
第一个函数返回“ÜberTage.Halde”
第二个对“ÜberTage.Halde”没有异常。
嗯……我使用了我的变通方法<问候马里奥
页:
[1]