[c#] AutoCad dll와 exe 버튼 실행

[c#] AutoCad dll와 exe 버튼 실행

작성일 2024.01.15댓글 1건
    게시물 수정 , 삭제는 로그인 필요

1) c#으로 AutoCad에서 같은 소스를 dll을 netload해서 바로 실행하면 오류 없이 실행이 되는데
2) 폼을 만들고, 버튼을 추가한후 같은 소스를 복사하여 버튼을 클릭시 실행하게 되면 실행은 되는데
   오류가 발생합니다. 혹시 이런 문제를 해결할 수 있는 방법이 있으면 알려주세요~

   
   -> AutoCad에서 dll을 netload
   -> 폼 추가 -> 버튼 추가
   -> 버튼실행 -> 실행은 되는데 에러 


#c# autocad api #c# autocad #c# autocad create polyline #c# autocad sendcommand #c# autocad attsync #c# autocad elockviolation #c# autocad create table #c# autocad create line #c# autocad wpf #c# autocad example

profile_image 익명 작성일 -

안녕하세요, 게임포럼입니다.

문제가 발생할 수 있는 몇 가지 이유가 있습니다. 아마도 실행 컨텍스트나 초기화에 관련된 문제로 추정됩니다. 아래는 몇 가지 해결 방법과 유용한 정보입니다.

실행 경로 문제:

DLL 파일이 실행 파일과 관련된 경로에 존재하지 않을 수 있습니다. DLL 파일을 실행 파일이 있는 디렉토리에 두거나, 실행 파일의 경로를 설정하여 DLL을 로드하도록 만들어 볼 수 있습니다.

csharp

Copy code

// DLL을 실행 파일이 있는 경로에 두는 경우

string dllPath = Path.Combine(Application.StartupPath, "YourDll.dll");

AutoCAD 실행 컨텍스트:

AutoCAD에서 DLL을 netload 할 때와 C# 폼에서 버튼을 클릭하여 실행할 때의 AutoCAD의 실행 컨텍스트가 다를 수 있습니다. 특히 AutoCAD API를 사용하는 경우에는 AutoCAD 환경 설정에 따라서 동작이 달라질 수 있습니다.

버튼 클릭 이벤트 핸들러에서 AutoCAD API를 사용하는 코드를 실행할 때, 해당 코드가 AutoCAD이 적절한 실행 컨텍스트에서 실행되도록 확인하십시오. 예를 들어, Autodesk.AutoCAD.Runtime.CommandMethod 어트리뷰트를 사용하여 AutoCAD 명령으로 실행하는 것이 좋습니다.

csharp

Copy code

[CommandMethod("MyCommand")]

public void MyCommand()

{

// AutoCAD API 코드 실행

}

초기화 문제:

AutoCAD API를 초기화할 때 문제가 발생할 수 있습니다. AutoCAD API를 사용하기 전에 초기화되었는지 확인하십시오.

csharp

Copy code

using Autodesk.AutoCAD.Runtime;

public class MyCommands

{

[CommandMethod("MyCommand")]

public void MyCommand()

{

// AutoCAD API 초기화

if (!HostApplicationServices.Current.IsApplicationStarted)

{

HostApplicationServices.Current.Starting += (sender, e) =>

{

// 초기화 코드

};

}

// AutoCAD API 코드 실행

}

}

예외 처리:

예외 처리를 통해 발생한 예외 정보를 확인하여 어떤 문제가 있는지 확인할 수 있습니다. try-catch 블록을 추가하여 예외를 캐치하고, 콘솔이나 로그에 예외 정보를 출력하도록 만들어 보세요.

csharp

Copy code

try

{

// AutoCAD API 코드 실행

}

catch (Exception ex)

{

// 예외 처리 및 로그 출력

Console.WriteLine(ex.ToString());

}

위의 조언들이 도움이 되기를 바랍니다. 만약 문제가 지속되면 구체적인 코드 조각이나 발생한 오류 메시지를 공유해주시면 더 자세한 도움을 드릴 수 있을 것입니다.

게임 입시/취업 1:1 익명 무료상담

↓↓↓↓↓↓

https://link.inpock.co.kr/gameforum

[C#] AutoCad offset 방법

... 이 코드를 AutoCAD에서 실행하려면 AutoCAD 개발 환경에서 C#... 그리고 해당 코드를 사용할 명령어나 버튼 등에 연결하여 사용할 수...

CAD DREAM 실행이.. 매크로가..

... DreamSub.dll을 로드하는중 에러발생. AutoCAD를 종료후... vbruntimes_r7.exe 파일에대고 마우스 오른쪽 버튼을 눌러 [관리자 권한으로 실행] 을 선택하여 설치합니다....

(인벤터) 실행간 autocad acad.exe...

... 여기서 아래쪽 확인 누르면 실행이 종료 되버리고 취소 버튼 누르면 또 같은 메세지 나오고 2번 정도 더 나오다가 정상적으로 실행이 되곤 합니다. 가끔 안될때도...

C# DLL injection 메모장

C#에서 DLL injection을 이용하여 메모장에 제 DLL을... exe파일이 한개 더 있습니다. 버튼이 눌리면, DLL이... 눌리면 DLL에 있는 함수 실행 이런식으로.. 2. 시중에...

autocad 메세지

auto cad 2009사용자입니다. 이러한메세지가 파일을 열어도 뜨고 그냥 캐드를 실행해도 뜹니다.... * mbuttonpan 변수값을 0 으로 변경하여, 가운데버튼 팬 기능을...

autocad 2002 경고

... autocad 2002: acad.exe-응용 프로그램 오류 "0*00039ffc"의... cad를 푸르나에서 따운받아서 할려고 깔고나서 실행만... 오른쪽버튼클릭하신다 음에 열기를 누르시고 그안에...

autocad2000을 xp에서 깔아서쓸려는데요

... Setup.exe 파일이 있습니다. Setup.exe 화일에서 마우스 오른쪽 버튼 클릭... Windows 2000을 선택하고 확인 버튼을 누른 후에 실행하시면 설치가 됩니다... 쉽죠......

Auto Cad 구동이 안됩니다.

... 버튼으로 클릭합니다. "특성"을 클릭합니다. "바로 가기" 탭에 액세스합니다. "대상" 필드에서 "acad.exe... 이 방법으로 AutoCAD가 실행되면 그래픽 카드 드라이버를...