इसे छोड़कर कंटेंट पर जाएं

परिनियोजन

यह पेज उस व्यक्ति के लिए है जो दुकान के कंप्यूटरों पर AFDIM इंस्टॉल करता है। AFDIM एक Inno Setup इंस्टॉलर AFDIM_Setup_<version>.exe है, जो डाउनलोड पेज पर मिलता है। यह AutoCAD® Autoloader bundle इंस्टॉल करता है। AutoCAD में हाथ से कुछ पंजीकृत नहीं करना होता: न NETLOAD, न COM पंजीकरण। AutoCAD हर बार शुरू होते समय अपने ApplicationPlugins फ़ोल्डर स्कैन करता है और bundle लोड करता है।

दायराप्लगइन bundleअनइंस्टॉलरउन्नत अधिकार चाहिए
प्रति उपयोगकर्ता (डिफ़ॉल्ट)%APPDATA%\Autodesk\ApplicationPlugins\AFDIM.bundle%APPDATA%\AFDIM\uninstall\unins000.exeनहीं
सभी उपयोगकर्ता (/ALLUSERS)%ProgramFiles%\Autodesk\ApplicationPlugins\AFDIM.bundle%ProgramFiles%\AFDIM\uninstall\unins000.exeहाँ

अनइंस्टॉलर जानबूझकर bundle फ़ोल्डर से बाहर है, क्योंकि AutoCAD bundle फ़ोल्डर स्कैन करता है। सभी उपयोगकर्ता इंस्टॉल में अनइंस्टॉलर %ProgramFiles% में रहता है, ताकि सामान्य उपयोगकर्ता उसे बदल न सके। तालिका में दिए गए इंस्टॉल प्रकार का ही अनइंस्टॉलर इस्तेमाल करें। %ProgramData% से कभी कोई अनइंस्टॉलर न चलाएँ, भले ही कोई पुराना संदेश वहाँ ले जाए। अगर सभी उपयोगकर्ता इंस्टॉल का अनइंस्टॉलर नहीं मिल रहा है, तो उस इंस्टॉल को ठीक करने के लिए डाउनलोड पेज का आधिकारिक इंस्टॉलर /ALLUSERS के साथ चलाएँ, फिर उसे अनइंस्टॉल करें। इंस्टॉलर दूसरे प्रकार के इंस्टॉल के ऊपर इंस्टॉल करने से मना करता है। प्रति-उपयोगकर्ता अनइंस्टॉलर को व्यवस्थापक अधिकारों के बिना चलाएँ।

Bundle में PackageContents.xml (Autoloader manifest), state.json (इंस्टॉल किया गया संस्करण, अपडेट चैनल और इंस्टॉल का दायरा) और हर संस्करण के लिए एक सबफ़ोल्डर वाला Contents फ़ोल्डर होता है। /NOAUTOUPDATE इंस्टॉल करने पर noautoupdate नाम की फ़ाइल जुड़ती है। इंस्टॉलर Start Menu में AFDIM › AFDIM Help शॉर्टकट भी जोड़ता है।

AFDIM चलते समय ये चीज़ें लिखता है। %ProgramData%\AFDIM\license के अलावा हर Windows खाते की अपनी कॉपी होती है; वह सभी खाते साझा करते हैं।

स्थानसामग्री
%APPDATA%\AFDIMसेटिंग और सहेजे गए ड्राफ्टिंग मानक
%LOCALAPPDATA%\AFDIM\logsसहायता लॉग
%LOCALAPPDATA%\AFDIM\cacheअपडेट डाउनलोड
%LOCALAPPDATA%\AFDIM\licenseइस Windows खाते का लाइसेंस
%ProgramData%\AFDIM\licenseकंप्यूटर के सभी खातों का लाइसेंस, जब Windows लिखने की अनुमति देता है
HKCU\Software\AFDIMइंस्टॉल ID और लाइसेंस जाँच का समय रिकॉर्ड
%TEMP%\AFDIMज्यामिति निर्यात, जो सेटिंग संवाद के AFDIM के बारे में टैब में पिछली रन की ज्यामिति निर्यात करें… से बनाए गए हैं

अनइंस्टॉलर हमेशा लाइसेंस फ़ोल्डर और registry key रखता है। अनइंस्टॉल करें देखें।

दूसरे दायरे में AFDIM पहले से इंस्टॉल हो तो इंस्टॉलर चलने से मना करता है। AutoCAD दोनों ApplicationPlugins मूल फ़ोल्डर स्कैन करता है, इसलिए दोनों कॉपी लोड होंगी। AFDIM कमांड दो बार पंजीकृत होगी और ऐप के अंदर का अपडेटर केवल एक कॉपी अपडेट करेगा। मना करने वाला संदेश पहले चलाने के लिए सही unins000.exe का नाम बताता है। बिना संवाद वाले इंस्टॉल में कोई संदेश नहीं दिखता: इंस्टॉल रुकेगा और कारण /LOG फ़ाइल में लिखा जाएगा।

एक bundle हर seat के लिए काम करता है। PackageContents.xml हर AutoCAD रिलीज़ श्रृंखला को उससे मेल खाते build पर भेजता है।

Buildरिलीज़ श्रृंखलाAutoCAD वर्षस्थिति
net472R19.0 से R23.12013 से 2020जारी; 2014 और 2016 से 2018 प्रयोगात्मक
net48R24.0 से R24.32021, 2022, 2023, 2024जारी
net8.0-windowsR25.0 से R25.12025, 2026जारी
net10.0-windowsR26.02027जारी, प्रयोगात्मक

AFDIM को समर्थित श्रृंखला में बाद में इंस्टॉल किए गए AutoCAD में फिर से इंस्टॉल किए बिना लोड किया जाता है। उन्हीं वर्षों का AutoCAD Mechanical भी वही build लोड करता है। AutoCAD LT समर्थित नहीं है, क्योंकि उसमें .NET API नहीं है। विज़ार्ड का Detected AutoCAD पेज केवल जानकारी देता है। हर संस्करण के लिए कोई checkbox नहीं है।

यह समर्थित है। हर संस्करण अपने सबफ़ोल्डर में इंस्टॉल होता है, इसलिए चलता हुआ AutoCAD इंस्टॉलर द्वारा लिखी जा रही किसी फ़ाइल को लॉक नहीं करता। इंस्टॉलर सूचना दिखाकर आगे बढ़ता है। किसी को पहले AutoCAD बंद करने की आवश्यकता नहीं है। चलता हुआ AutoCAD अगली बार शुरू होने पर AFDIM लोड करता है।

टर्मिनल विंडो
AFDIM_Setup_<version>.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART

इंस्टॉलर विज़ार्ड और उसका लाइसेंस अनुबंध अंग्रेज़ी में हैं। Windows में वियतनाम के लिए सेटअप होने पर AFDIM Help पेज वियतनामी में, अन्यथा अंग्रेज़ी में खुलता है।

प्लगइन की अपनी इंटरफ़ेस भाषा है। नया इंस्टॉल अंग्रेज़ी में शुरू होता है, या Windows में वियतनाम की सेटिंग होने पर वियतनामी में (प्रदर्शन भाषा, क्षेत्रीय प्रारूप या देश)। हर उपयोगकर्ता सेटिंग संवाद के शीर्षक में 56 भाषाओं की ड्रॉप-डाउन सूची से भाषा बदल सकता है। संवाद AFDIM रिबन टैब के Settings बटन से खुलता है। भाषा संवाद, सूचना विंडो और कमांड लाइन संदेशों पर लागू होती है। जिसका अनुवाद अभी नहीं हुआ वह अंग्रेज़ी में दिखता है। चयन उस उपयोगकर्ता की सेटिंग में सहेजा जाता है।

स्विचप्रभाव
/VERYSILENTउपयोगकर्ता इंटरफ़ेस नहीं दिखता। स्क्रिप्टेड इंस्टॉल के लिए इस्तेमाल करें।
/SILENTकेवल प्रगति विंडो, विज़ार्ड पेज नहीं।
/SUPPRESSMSGBOXESसंदेश विंडो दबाता है। इसे /VERYSILENT के साथ इस्तेमाल करें।
/NORESTARTकभी रीस्टार्ट नहीं करता। इंस्टॉलर को रीस्टार्ट की ज़रूरत नहीं है। फिर भी स्विच दें।
/LOG="C:\path\afdim.log"पूरा इंस्टॉल लॉग लिखता है। इंस्टॉल के बारे में सहायता अनुरोध में इसे संलग्न करें।
/ALLUSERS%ProgramFiles% में सभी उपयोगकर्ताओं के लिए इंस्टॉल करता है। उन्नत अधिकार चाहिए। state.json में मशीन का दायरा दर्ज करता है, जिससे ऐप के अंदर अपडेट बंद हो जाते हैं।
/CURRENTUSERमौजूदा उपयोगकर्ता के लिए इंस्टॉल करता है। यही डिफ़ॉल्ट है।
/NOAUTOUPDATEnoautoupdate फ़ाइल जोड़कर इस इंस्टॉल के लिए ऐप के अंदर अपडेट बंद करता है। इसके बिना इंस्टॉलर फिर चलाने पर अपडेट चालू हो जाते हैं।
/EXCLUDESERIES=<series>उस रिलीज़ श्रृंखला का build छोड़ देता है, इसलिए उसमें AutoCAD रिलीज़ AFDIM लोड नहीं करते। कई श्रृंखलाओं को अल्पविराम से अलग करें।
/NOICONSStart Menu शॉर्टकट नहीं बनाता।
/DIR="C:\path"इंस्टॉल फ़ोल्डर बदलता है। यह आम तौर पर सही नहीं है, क्योंकि AutoCAD केवल मानक ApplicationPlugins स्थान स्कैन करता है।

/EXCLUDESERIES में वर्ष नहीं, रिलीज़ श्रृंखला दें: 2013 = R19.0, 2014 = R19.1, 2015 = R20.0, 2016 = R20.1, 2017 = R21.0, 2018 = R22.0, 2019 = R23.0, 2020 = R23.1, 2021 = R24.0, 2022 = R24.1, 2023 = R24.2, 2024 = R24.3, 2025 = R25.0, 2026 = R25.1, 2027 = R26.0। स्विच उस पूरी श्रृंखला को कवर करने वाला build हटाता है। R23.0 छोड़ने पर AFDIM 2013 से 2020 के सभी AutoCAD में लोड होना बंद करता है। R24.1 छोड़ने पर 2021 से 2024 के सभी AutoCAD में बंद होता है। R25.0 या R25.1 छोड़ने पर 2025 और 2026 दोनों में बंद होता है। इंस्टॉलर ऐसी श्रृंखला को अनदेखा करता है जिसे वह नहीं पहचानता।

प्रति-उपयोगकर्ता इंस्टॉल का सुरक्षा समझौता

“प्रति-उपयोगकर्ता इंस्टॉल का सुरक्षा समझौता ” शीर्षक वाला अनुभाग

डिफ़ॉल्ट इंस्टॉल प्लगइन DLL को %APPDATA% में रखता है। साइन-इन किया उपयोगकर्ता इस फ़ोल्डर में लिख सकता है और AutoCAD हर बार शुरू होते समय DLL को अपनी प्रक्रिया में लोड करता है। उसी उपयोगकर्ता के रूप में चलने वाला कोई भी प्रोग्राम DLL को वहीं बदल सकता है, उदाहरण के लिए malware या compromised add-in। इसके बाद उसका कोड बिना पूछे और बिना उन्नत अधिकार के AutoCAD के अंदर चलता है। यह हर प्रति-उपयोगकर्ता AutoCAD प्लगइन पर लागू होता है, क्योंकि व्यवस्थापक अधिकार के बिना इंस्टॉल करने के लिए उपयोगकर्ता को उस फ़ोल्डर में लिखना पड़ता है।

जोखिम घटाने के उपाय:

उपायप्रभाव
/ALLUSERS से इंस्टॉल करेंDLL %ProgramFiles% में रहता है, जहाँ सामान्य उपयोगकर्ता नहीं लिख सकता। इसे बदलने के लिए व्यवस्थापक अधिकार चाहिए।
SECURELOAD को डिफ़ॉल्ट 1 पर रखेंAutoCAD trusted paths के बाहर से .NET assembly लेने से मना करता है। trusted फ़ाइल को वहीं बदलने से नहीं रोकता, लेकिन दूसरी जगह रखे नए DLL को रोकता है।
Application control (WDAC या AppLocker)बदले DLL को रोक सकता है। 0.1.6 से इंस्टॉलर और AFDIM.dll पर code-signing है (प्रकाशक TO VAN TIN)।
Bundle फ़ोल्डर में अनपेक्षित बदलाव देखेंइंस्टॉलर या ऐप के अंदर के अपडेट (AFDIM के बारे में टैब पर अभी अपडेट करें) के अलावा कोई भी Contents\<version>\ नहीं बदले।

DLL को केवल व्यवस्थापक द्वारा बदले जा सकने वाले स्थान पर रखने के लिए /ALLUSERS से इंस्टॉल करें।

कई सीट वाली दुकान के लिए /ALLUSERS इस्तेमाल करें। %APPDATA% roaming करता है। Roaming profile या folder redirection होने पर प्रति-उपयोगकर्ता इंस्टॉल हर साइन-इन पर नेटवर्क से प्लगइन कॉपी करता है। एक ही उपयोगकर्ता के रूप में साइन-इन किए दो कंप्यूटर भी एक ही फ़ोल्डर के लिए प्रतिस्पर्धा कर सकते हैं।

टर्मिनल विंडो
AFDIM_Setup_<version>.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /ALLUSERS

इसे उन्नत अधिकार वाले संदर्भ से चलाएँ, जैसे SCCM, Intune या Group Policy startup script। फिर कंप्यूटर के हर उपयोगकर्ता को AFDIM मिलता है और प्लगइन फ़ाइलें roaming profile में नहीं रहतीं। हर उपयोगकर्ता की %APPDATA%\AFDIM सेटिंग profile के साथ चलती हैं।

Roaming profile पर प्रति उपयोगकर्ता इंस्टॉल रखना आवश्यक हो तो %APPDATA%\Autodesk\ApplicationPlugins को folder redirection से बाहर रखें।

सभी उपयोगकर्ता इंस्टॉल, जिसे machine-wide install भी कहते हैं, ऐप के अंदर अपडेट बंद करता है, क्योंकि सामान्य उपयोगकर्ता %ProgramFiles% में नहीं लिख सकता। नया संस्करण मिलने पर सेटिंग संवाद के AFDIM के बारे में टैब का अपडेट समूह अभी अपडेट करें की जगह यह संदेश दिखाता है:

यह इंस्टॉलेशन अपने-आप अपडेट नहीं हो सकता: सभी उपयोगकर्ताओं के लिए इंस्टॉल था, इंस्टॉल में अपडेट बंद थे, या फ़ोल्डर केवल-पढ़ने योग्य है।

नए संस्करण उसी तरह भेजें जैसे पहला भेजा था। मौजूद इंस्टॉल के ऊपर नया इंस्टॉलर चलाना समर्थित अपग्रेड है। यह हर उपयोगकर्ता की सेटिंग और हर कंप्यूटर का लाइसेंस रखता है। हर संस्करण में बदलाव रिलीज़ नोट्स पर हैं।

अपडेट जाँच update.afdim.com की हस्ताक्षरित अपडेट फ़ीड के लिए एक HTTPS अनुरोध है। यह AutoCAD को कभी नहीं रोकती। AFDIM जाँच करता है:

  • AutoCAD शुरू होने पर बैकग्राउंड में: सफल जाँच के बाद अधिकतम हर 24 घंटे में और विफल जाँच के 2 घंटे से पहले नहीं
  • सेटिंग संवाद खुलने पर एक बार, यदि उस AutoCAD सत्र में अभी जाँच नहीं हुई है
  • जब उपयोगकर्ता AFDIM के बारे में टैब पर अभी जाँचें चुनता है

पहली दो जाँच केवल तभी होती हैं जब अपने-आप अपडेट जाँचें चुना हो और AFDIM_DISABLE_BACKGROUND_SERVICES=1 environment variable सेट न हो। यह variable AFDIM लॉग फ़ाइल और प्रतीक्षारत लाइसेंस फ़ाइल या नवीनीकरण पाने वाली बैकग्राउंड लाइसेंस जाँच भी बंद करता है। लॉग फ़ाइल न होने पर सहायता पैकेज में लॉग नहीं होता।

हर कंप्यूटर के लिए अलग लाइसेंस चाहिए। इसे सेटिंग संवाद के AFDIM के बारे में टैब के लाइसेंस समूह में सक्रिय करें। लाइसेंस कुंजी होने पर उपयोगकर्ता लाइसेंस कुंजी दर्ज करें… चुनता है। उस समय कंप्यूटर को HTTPS पर api.afdim.com तक पहुँचना चाहिए। AutoCAD से नेटवर्क न मिले तो उपयोगकर्ता लाइसेंस का अनुरोध करें चुनता है। दिखने वाला अनुरोध कोड लाइसेंस पेज के ज़रिए भेजा जाता है। वापस मिली लाइसेंस फ़ाइल उसी समूह में लाइसेंस लोड करें… से लोड की जाती है। लाइसेंस कैसे काम करता है देखें।

Windows अनुमति दे तो AFDIM लोड लाइसेंस %ProgramData%\AFDIM\license में भी लिखता है। तब उसी कंप्यूटर के दूसरे Windows खातों को फिर सक्रियण नहीं करना पड़ता।

टर्मिनल विंडो
rem per-user install (default)
"%APPDATA%\AFDIM\uninstall\unins000.exe" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART
rem all-users install, from an elevated context
"%ProgramFiles%\AFDIM\uninstall\unins000.exe" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART

Inno Setup registry key Software\Microsoft\Windows\CurrentVersion\Uninstall\{04AC9D3E-F942-4408-8BBC-73CB09043772}_is1 के QuietUninstallString मान में बिना संवाद वाला कमांड भी लिखता है। प्रति-उपयोगकर्ता इंस्टॉल के लिए key HKCU में और सभी उपयोगकर्ता इंस्टॉल के लिए HKLM में है।

अनइंस्टॉलर डिफ़ॉल्ट रूप से उपयोगकर्ता की सेटिंग रखता है, इसलिए अनइंस्टॉल करके फिर इंस्टॉल करना मरम्मत की तरह काम कर सकता है। डेटा भी हटाने के लिए /PURGEDATA जोड़ें:

टर्मिनल विंडो
"%APPDATA%\AFDIM\uninstall\unins000.exe" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /PURGEDATA

/PURGEDATA अनइंस्टॉलर चलाने वाले खाते के %APPDATA%\AFDIM, %LOCALAPPDATA%\AFDIM और %TEMP%\AFDIM हटाता है। दूसरे Windows खाते अपने फ़ोल्डर रखते हैं। %LOCALAPPDATA%\AFDIM के अंदर license फ़ोल्डर हमेशा रखा जाता है। /PURGEDATA कभी %ProgramData%\AFDIM\license या HKCU\Software\AFDIM registry key नहीं हटाता। अपडेट कैश हमेशा हटाया जाता है।

अनइंस्टॉल के दौरान AutoCAD चलता हो तो अनइंस्टॉलर वे फ़ाइलें रखे रहता है जिन्हें AutoCAD ने पकड़ रखा है। इंटरैक्टिव अनइंस्टॉल एक विंडो दिखाता है जो यह बताती है: सभी CAD विंडो बंद करें, फिर अनइंस्टॉलर दोबारा चलाएँ। साइलेंट अनइंस्टॉल उन फ़ाइलों को अपने लॉग में सूचीबद्ध करता है। रीस्टार्ट नहीं माँगा जाता। जिस फ़ोल्डर का पथ बदल गया है, उसकी फ़ाइलें भी रखी जाती हैं। सभी CAD विंडो बंद करें और अनइंस्टॉल या दोबारा इंस्टॉल फिर से आज़माएँ, या हाथ से कुछ भी हटाने से पहले लॉग में दिए पथ देखें। अगली साइन-इन पर कुछ नहीं हटाया जाता।

  1. AutoCAD शुरू करें। रिबन पर AFDIM टैब में Dimension और Settings बटन दिखते हैं। इन दोनों नामों की भाषा हर जगह अंग्रेज़ी है।
  2. AFDIM चलाएँ। यह NETLOAD के बिना काम करता है। बिना लाइसेंस वाले कंप्यूटर पर AFDIM में आपका स्वागत है या AFDIM सक्रिय नहीं है विंडो खुलती है। दोनों में से कोई भी विंडो साबित करती है कि प्लगइन लोड हुआ।
  3. जाँचें कि bundle फ़ोल्डर में PackageContents.xml मौजूद है और उसमें Components block के SeriesMin और SeriesMax में इंस्टॉल AutoCAD शामिल है।
  4. जाँचें कि state.json में अपेक्षित activeVersion, channel और installScope हैं।

AFDIM अज्ञात कमांड हो तो AutoCAD एक बार रीस्टार्ट करें, क्योंकि वह प्लगइन केवल शुरू होते समय स्कैन करता है। फिर भी काम न करे तो SECURELOAD और TRUSTEDPATHS नीति जाँचें। फिर /LOG फ़ाइल और AutoCAD संस्करण सहायता को भेजें।