2017-09-18 17 views
0

こんにちは、私はどのように私はそれを達成することができるのAutoCAD 2018にDLLファイルを読み込もうとしています。 私はそれが起動時にそれを行うことができるように自動化したいです。 netloadを使用するとすべてが動作します。 私は* .lsp方法を使用しました。誰かが助けてくれますか?私はたくさんの方法を見つけましたが、何もできません。Autocad 2018 autoload dll

答えて

1

AutoCADの公式の方法は、オートローダーの機能を使用することです。 基本的に.dllファイルを起動時にAutoCADが読み込んで、すべてのプラグインをロードする既定のフォルダに、他のファイルとバンドルします。これは、プラグイン(.dll)を複数のマシンにインストールするセットアップファイルとして配布する場合に特に便利です。

最初の手順は、 "%ProgramData%/Autodesk/ApplicationPlugins"にバンドルフォルダを作成することです。バンドルフォルダは.bundle(例:MyApp.bundle)で終わる通常のWindowsフォルダです

このフォルダの中には、 "Contents"という名前のフォルダと "PackageContents.xml"という名前のフォルダが必要です。内容は、次のような単純なことができます(「MyApp」、「MyName」などのようなものを変更し...、それはあなたのために働く必要があります)

コードPackageContents.xml内フォルダ内

置きの.dll:

<?xml version="1.0" encoding="utf-8"?> 
<ApplicationPackage SchemaVersion="1.0" ProductType="Application" Name="MyAPP" AppVersion="1.0" Description="MyAPP, My description" Author="My Name" Icon="./Contents/MyAPPIcon.ico" OnlineDocumentation="http://MyWebSite.com" HelpFile="" ProductCode="{xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx}" FriendlyVersion="1.0" SupportedLocales="Enu" AutodeskProduct="AutoCAD"> 
    <CompanyDetails Name="My Name" Phone=" " Url="http://MyWebsite.com" Email="[email protected]" /> 
    <Components Description="Main"> 
    <RuntimeRequirements SupportPath="./Contents" OS="Win32|Win64" Platform="AutoCAD*" SeriesMin="R19.0" SeriesMax="R22.0" /> 
    <ComponentEntry AppName="MyAPP" Version="1.0" ModuleName="./Contents/MyAPP.dll" AppDescription="My description" LoadOnAppearance="True" LoadOnAutoCADStartup="True" LoadOnCommandInvocation="True"> 
    </ComponentEntry> 
    </Components> 
</ApplicationPackage> 

私は上記のは、あなたの質問に答えるには十分だと思いますが、あなたがより多く必要な場合は、以下のリンクで記事読んで:それはまた、非常にEAです http://adndevblog.typepad.com/autocad/2013/01/autodesk-autoloader-white-paper.html

+0

これは2つ動作しますが、2つの質問があります。 1)これはコマンドを自動化するのにどのように役立ちますか? 2)モジュール名でも、どのようなパスですか? – panoskarajohn

+0

質問し、私ができるなら私は答えようとします – mavios

+0

私は.netプラグインを書きました。私は自動的にいくつか カスタムコマンドを実行したいと思います。私はVBA/ActiveX(マクロ)よりも大きな柔軟性を提供するので、.NETでそれをやりたい 2. xmlを見て、内部にあるモジュール名= "./ Contents" - >これはどこにつながっていますか?どのフォルダですか? 3. xmlが自動化にどのように役立つのですか? – panoskarajohn

1

NETLOADコマンドをLSPファイルに置き、LSPファイルをスタートアップスイートに追加します。

はまた、パスは次のように2つのバックスラッシュを使用する必要がある点に注意してください。起動時に.NETで書かれた.dllファイルをロードするための

(command "netload" "C:\\Internal Tools\\Detect Overlap\\Type 5\\x86\\Detect Overlap.dll") 
+0

ここで、スタートアップスイートは何ですか。 – panoskarajohn

+0

AutocadにAPPLOADと入力すると、スーツケースの写真が表示されます。 – braX

+0

よろしくお願いいたします。テストしてお知らせします。 – panoskarajohn

1

をレジストリにはsyがあり、私の好みの方法です。下のリンクを参照してください。 展開するには、インストーラを作成してレジストリキーを設定するか、AutoCAD以外のコードを実行している場合はコード内で正しく実行できます。

https://knowledge.autodesk.com/support/autocad/troubleshooting/caas/sfdcarticles/sfdcarticles/How-to-autoload-DLLs-with-AutoCAD.html

+0

非常に興味深い方法、正直言って私はレジストリと遊ぶことを恐れていたが、それは非常に簡単に思われる。ありがとうございました。 – panoskarajohn

関連する問題