C# и AutoCAD2016. Открытие чертежей и получение параметров инструмента "Измерить

Автор Тема: C# и AutoCAD2016. Открытие чертежей и получение параметров инструмента "Измерить  (Прочитано 52994 раз)

0 Пользователей и 7 Гостей просматривают эту тему.

Оффлайн Андрей Бушман

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
через netload загружаю в автокаде
что акад пишет в консоль сразу после твоей первой попытки загрузить dll? Какая версия акада? Из какого каталога грузишь dll (локальный, сетевой | доверенный, не доверенный)?

ой, А.Н. уже спросил, пока я набирал текст.

Оффлайн melkalex90Автор темы

  • ADN OPEN
  • **
  • Сообщений: 59
  • Карма: 0
Давай уточним:
1) Версия и разрядность AutoCAD?
2) Версия Visual Studio?
3) Для какой версии .NET выполнялась компиляция? Для какой разрядности: x86/x64?
4) Нормально ли загрузился dll-файл? Не было ли сообщений об ошибках?
5) Если AutoCAD версии >= 2014, то путь к dll-файлу находится в доверенных?
1) AutoCad Mechanical 2016 х64
2) Visual 2015(32 бита)
3) .NET 4.5.2, Any CPU
4) Да загрузился без каких либо проблем, ошибок не было.
5) А как это проверить?

Оффлайн Андрей Бушман

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
4) Да загрузился без каких либо проблем, ошибок не было.
не пишет в консоль - это ещё не значит что их не было вовсе.
.NET 4.5.2, Any CPU
а в конфиг-файле акада (acad.exe.config) какая целевая версия дотнета указана (по умолчанию там v4.0)?

Оффлайн Пашин Евгений

  • ADN PRO
  • *
  • Сообщений: 662
  • Карма: 12
  • Skype: pashin.evgeniy
А как это проверить?

Ну если Автокад не спросил: «А вы уверены, что хотите загрузить эту библиотеку?», то значит НЕдоверенный, иначе - доверенный.

Оффлайн Андрей Бушман

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78

Оффлайн melkalex90Автор темы

  • ADN OPEN
  • **
  • Сообщений: 59
  • Карма: 0
4) Да загрузился без каких либо проблем, ошибок не было.
не пишет в консоль - это ещё не значит что их не было вовсе.
.NET 4.5.2, Any CPU
а в конфиг-файле акада (acad.exe.config) какая целевая версия дотнета указана (по умолчанию там v4.0)?
В конфиг файле <supportedRuntime version="v4.0"/>. это?
А как это проверить?

Ну если Автокад не спросил: «А вы уверены, что хотите загрузить эту библиотеку?», то значит НЕдоверенный, иначе - доверенный.
Автокад спросил про загрузку данной библиотеки

Оффлайн Андрей Бушман

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
какие dll акада подключал к проекту? установил ли для них Copy Local в False?

Оффлайн melkalex90Автор темы

  • ADN OPEN
  • **
  • Сообщений: 59
  • Карма: 0
какие dll акада подключал к проекту? установил ли для них Copy Local в False?
Подключал accoremgd acdbmgd acmgd Autodesk.AuroCAD.Interop и Interop.Common.
Да устанавливал Copy Local False

Оффлайн Андрей Бушман

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Autodesk.AuroCAD.Interop и Interop.Common
эти не нужны для кода, который ты пытаешься запустить. Я тебя спрашивал про сетевой каталог. Из каких соображений молчишь?

Оффлайн melkalex90Автор темы

  • ADN OPEN
  • **
  • Сообщений: 59
  • Карма: 0
Autodesk.AuroCAD.Interop и Interop.Common
эти не нужны для кода, который ты пытаешься запустить. Я тебя спрашивал про сетевой каталог. Из каких соображений молчишь?
Ой, прошу прощения, пропустил. Dll гружу с компа(что автокад что длл лежат на одном разделе).

Оффлайн Андрей Бушман

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
показывай содержимое твоего csproj-файла.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
показывай содержимое твоего csproj-файла.
А лучше весь проект в архиве - вдруг еще чего напутал.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Андрей Бушман

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
в виду того, что моё последнее сообщение повергло автора, судя по всему, в ступор, то... меня терзают смутные сомнения: возможно, что автор не знает что такое "csproj-файл" и как посмотреть | опубликовать его содержимое. как следствие - я начинаю сомневаться в том, что он вообще знаком с C#... хочется верить, что ошибаюсь, но опыт предыдущего общения не настраивает на позитивный лад :(

Оффлайн melkalex90Автор темы

  • ADN OPEN
  • **
  • Сообщений: 59
  • Карма: 0
Содержимое csproj.
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ProjectGuid>{D6AE4A9A-0901-4CB1-9F2C-64B2CD8F60D8}</ProjectGuid>
    <OutputType>Library</OutputType>
    <AppDesignerFolder>Properties</AppDesignerFolder>
    <RootNamespace>ClassLibrary2</RootNamespace>
    <AssemblyName>ClassLibrary2</AssemblyName>
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
    <FileAlignment>512</FileAlignment>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
    <DebugSymbols>true</DebugSymbols>
    <DebugType>full</DebugType>
    <Optimize>false</Optimize>
    <OutputPath>bin\Debug\</OutputPath>
    <DefineConstants>DEBUG;TRACE</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <DebugType>pdbonly</DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\Release\</OutputPath>
    <DefineConstants>TRACE</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
    <DebugSymbols>true</DebugSymbols>
    <OutputPath>bin\x64\Debug\</OutputPath>
    <DefineConstants>DEBUG;TRACE</DefineConstants>
    <DebugType>full</DebugType>
    <PlatformTarget>x64</PlatformTarget>
    <ErrorReport>prompt</ErrorReport>
    <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
    <OutputPath>bin\x64\Release\</OutputPath>
    <DefineConstants>TRACE</DefineConstants>
    <Optimize>true</Optimize>
    <DebugType>pdbonly</DebugType>
    <PlatformTarget>x64</PlatformTarget>
    <ErrorReport>prompt</ErrorReport>
    <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
  </PropertyGroup>
  <ItemGroup>
    <Reference Include="accoremgd">
      <HintPath>..\..\..\..\..\Programms\AutoCAD 2016\accoremgd.dll</HintPath>
      <Private>False</Private>
    </Reference>
    <Reference Include="acdbmgd">
      <HintPath>..\..\..\..\..\Programms\AutoCAD 2016\acdbmgd.dll</HintPath>
      <Private>False</Private>
    </Reference>
    <Reference Include="acmgd">
      <HintPath>..\..\..\..\..\Programms\AutoCAD 2016\acmgd.dll</HintPath>
      <Private>False</Private>
    </Reference>
    <Reference Include="Autodesk.AutoCAD.Interop">
      <HintPath>..\..\..\..\..\Programms\AutoCAD 2016\Autodesk.AutoCAD.Interop.dll</HintPath>
      <EmbedInteropTypes>True</EmbedInteropTypes>
    </Reference>
    <Reference Include="Autodesk.AutoCAD.Interop.Common">
      <HintPath>..\..\..\..\..\Programms\AutoCAD 2016\Autodesk.AutoCAD.Interop.Common.dll</HintPath>
      <EmbedInteropTypes>True</EmbedInteropTypes>
    </Reference>
    <Reference Include="System" />
    <Reference Include="System.Core" />
    <Reference Include="System.Xml.Linq" />
    <Reference Include="System.Data.DataSetExtensions" />
    <Reference Include="Microsoft.CSharp" />
    <Reference Include="System.Data" />
    <Reference Include="System.Net.Http" />
    <Reference Include="System.Xml" />
  </ItemGroup>
  <ItemGroup>
    <Compile Include="Class1.cs" />
    <Compile Include="MakeContour\MyCommands.cs" />
    <Compile Include="Properties\AssemblyInfo.cs" />
  </ItemGroup>
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
       Other similar extension points exist, see Microsoft.Common.targets.
  <Target Name="BeforeBuild">
  </Target>
  <Target Name="AfterBuild">
  </Target>
  -->
</Project>
Во вложении архив с проектом.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Попробуй во вложении.
P.S.: Проблемы были не с моим кодом, а с твоим кодом. Нельзя так бездумно переименовывать имена классов.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение