• 使用VB.net Express 2010开发AutoCAD.net插件调试时出现很多错误的解决办法


    如果你对编程和开发AutoCAD.net 插件还是新手,那么AutoCAD开发者中心最近发布的“My First AutoCAD Plug-in”系列课程绝对值得一看。这个课程面向编程零基础但想对AutoCAD进行扩展的童鞋们。你可以使用免费的Visual Studio Express版本来开发。 AutoCAD开发者中心还提供了The AutoCAD 2010-2012 .NET Wizards项目向导,帮助你来快速的创建一个AutoCAD.net插件,并且这个向导还能帮你做好在Visual Studio Express版本中启动AutoCAD进行调试的相关设置,而这在Visual Studio Express的界面中的没有的。

    如果你使用VB.net Express 2010 并利用The AutoCAD 2010-2012 .NET Wizards创建了一个AutoCAD.net 插件,按F5启动调试时,在”即时”窗口中可能会发现很多错误。这些错误并不影响你程序的运行,但你往往需要等待好长时间才能开发调试工作。

    相关的错误信息类似:

    '----Immediate Window--------------------------------------

    System.Windows.Data Error: 5 : Value produced by BindingExpression is not valid for target property.; Value='<null>' BindingExpression:Path=AutomationName; DataItem='ToolBarCustomizeButton' (HashCode=44123454); target element is 'ToolBarToggleButton' (Name='mCustomizeButton'); target property is 'Name' (type 'String')
    System.Windows.Data Error: 5 : Value produced by BindingExpression is not valid for target property.; Value='<null>' BindingExpression:Path=AutomationName; DataItem='ToolBarCustomizeButton' (HashCode=44123454); target element is 'ToolBarToggleButton' (Name='mCustomizeButton'); target property is 'Name' (type 'String')
    System.Windows.Data Error: 5 : Value produced by BindingExpression is not valid for target property.; Value='<null>' BindingExpression:Path=AutomationName; DataItem='ToolBarCustomizeButton' (HashCode=44123454); target element is 'RibbonItemControl' (Name=''); target property is 'Name' (type 'String')
    System.Windows.Data Error: 5 : Value produced by BindingExpression is not valid for target property.; Value='<null>' BindingExpression:Path=AutomationName; DataItem='InfoCenterTextBox' (HashCode=52380055); target element is 'RibbonItemControl' (Name=''); target property is 'Name' (type 'String')
    System.Windows.Data Error: 5 : Value produced by BindingExpression is not valid for target property.; Value='<null>' BindingExpression:Path=AutomationName; DataItem='InfoCenterTextBox' (HashCode=52380055); target element is 'Button' (Name='PART_AcceptButton'); target property is 'Name' (type 'String')
    System.Windows.Data Error: 5 : Value produced by BindingExpression is not valid for target property.; Value='<null>' BindingExpression:Path=AutomationName; DataItem='WebServicesLoginButton' (HashCode=720995); target element is 'LoginButtonRibbonItemControl' (Name='mContainer'); target property is 'Name' (type 'String')
    System.Windows.Data Error: 5 : Value produced by BindingExpression is not valid for target property.; Value='<null>' BindingExpression:Path=AutomationName; DataItem='RibbonToggleButton' (HashCode=43678569); target element is 'RibbonItemControl' (Name=''); target property is 'Name' (type 'String')
    System.Windows.Data Error: 5 : Value produced by BindingExpression is not valid for target property.; Value='<null>' BindingExpression:Path=AutomationName; DataItem='WebServicesLoginButton' (HashCode=720995); target element is 'WebservicesLoginButtonControl' (Name='mDropDownButton'); target property is 'Name' (type 'String')
    System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='Autodesk.Private.Windows.ToolBars.ToolBarControl', AncestorLevel='1''. BindingExpression:Path=IsVisible; DataItem=null; target element is 'ImageControl' (Name='mImage'); target property is 'NoTarget' (type 'Object')
    System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='Autodesk.Private.Windows.ToolBars.ToolBarControl', AncestorLevel='1''. BindingExpression:Path=IsVisible; DataItem=null; target element is 'ImageControl' (Name='mImage'); target property is 'NoTarget' (type 'Object')
    System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='Autodesk.Private.Windows.ToolBars.ToolBarControl', AncestorLevel='1''. BindingExpression:Path=IsVisible; DataItem=null; target element is 'ImageControl' (Name='mImage'); target property is 'NoTarget' (type 'Object')
    System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='Autodesk.Private.Windows.ToolBars.ToolBarControl', AncestorLevel='1''. BindingExpression:Path=IsVisible; DataItem=null; target element is 'ImageControl' (Name='mImage'); target property is 'NoTarget' (type 'Object')
    System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='Autodesk.Private.Windows.ToolBars.ToolBarControl', AncestorLevel='1''.

    解决的办法就是添加下面的 <system.diagnostics>节到 Acad.exe.Config中,这个文件可以在你的AutoCAD安装目录中找到:

        <system.diagnostics>
        <sources>                                                                                                                                                                                      
          <source name="System.Windows.Data"               
                  switchName="SourceSwitch">
            <listeners>
              <remove name="Default" />
            </listeners>
          </source>
        </sources>
      </system.diagnostics>
    

    添加完成后,类似下面的样子(这里我使用的是Civil 3D):

    <configuration>
        <startup useLegacyV2RuntimeActivationPolicy="true">
            <supportedRuntime version="v4.0"/>
        </startup>
        <!--All assemblies in AutoCAD are fully trusted         
    so there's no point generating publisher evidence--> <runtime> <generatePublisherEvidence enabled="false"/> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <probing privatePath="bin\FDO;bin;Plugins\Workflow\Activities"/> </assemblyBinding> </runtime> <system.diagnostics> <sources> <source name="System.Windows.Data" switchName="SourceSwitch"> <listeners> <remove name="Default" /> </listeners> </source> </sources> </system.diagnostics> </configuration>

    希望对你有帮助。

    作者:峻祁连
    邮箱:junqilian@163.com
    出处:http://junqilian.cnblogs.com
    转载请保留此信息。
  • 相关阅读:
    eslint 入门项目搭建过程
    ES6 模块化笔记
    闭包
    JavaScript 内存相关知识
    Mac 配置Charles,抓取移动设备数据
    jquery.cookie的path坑
    如何模拟click事件,打开一个a标签链接?
    6月份开发问题整理
    js 淡入淡出的tab选项卡
    点击弹出模态框-以登录表单为例
  • 原文地址:https://www.cnblogs.com/junqilian/p/2409542.html
Copyright © 2020-2023  润新知