《AUTOCAD綠色軟件制作心得》由會員分享,可在線閱讀,更多相關(guān)《AUTOCAD綠色軟件制作心得(6頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、AUTOCAD綠色軟件制作心得
[作者:HUNRYBECKY??轉(zhuǎn)貼自:本站原創(chuàng)??點(diǎn)擊數(shù):30250??更新時間:2007-4-19??文章錄入:onegreen]
使用了近10天的時間研究AUTOCAD2006綠色版本,遇到很多問題,這里集中整理下問題和解決問題的思路。
1.加載 acstandards服務(wù)時出錯
分析:這個問題在制作綠色版的過程中遇到,也看到很多使用非綠色版的人也遇到這個問題,對全球網(wǎng)站進(jìn)行搜索,甚至在AUTODESK公司的網(wǎng)站也找不到答案,只是說可能是注冊表的問題,按照這個思路,本人花了幾天的時間對注冊表進(jìn)行了逐項(xiàng)測試,對acstandards服務(wù)進(jìn)行了分析
2、,發(fā)現(xiàn)acstandards服務(wù)實(shí)際就是AcStd.arx這個DLL文件,但注冊表中找不到這個文件,最后使用DEPEND發(fā)現(xiàn)與這個文件相關(guān)的一個動態(tài)連接庫文件AcStMgr.dll,對其分析測試,發(fā)現(xiàn)注冊表CLISD中如果沒有項(xiàng)對應(yīng)的項(xiàng)出現(xiàn)就會出現(xiàn)這個問題,解決方法很簡單,增加注冊表項(xiàng)目即可。
[HKEY_CLASSES_ROOT\CLSID\{EEE6A656-87AC-11D6-A55B-0060B0875CB4}\InProcServer32]
@="AcStMgr.dll"
"ThreadingModel"="Apartment"
[HKEY_CLASSES_ROOT\CLSI
3、D\{EEE6A656-87AC-11D6-A55B-0060B0875CB4}]
@="AcStManager"
需要說明的是也可以把AcStd.arx改名或刪除,這樣也不會啟動時調(diào)用該文件,這個模塊好象并不影響操作,這個模塊還可以在工具\(yùn)應(yīng)用程序中重新加載
另外,如果打開圖檔時還出現(xiàn)無法加載ACSIGN服務(wù)的錯誤,可導(dǎo)入如下注冊表
[HKEY_CLASSES_ROOT\CLSID\{47775DA0-E874-4EAF-A28C-20C6E2D387A0}\InProcServer32]
@="D:\\AUTOCAD2006\\AcSignCore16.dll"
"Thread
4、ingModel"="Apartment"
[HKEY_CLASSES_ROOT\CLSID\{47775DA0-E874-4EAF-A28C-20C6E2D387A0}\ProgID]
@="AcSignCore.AdskFindSignFile.1"
[HKEY_CLASSES_ROOT\CLSID\{47775DA0-E874-4EAF-A28C-20C6E2D387A0}\Programmable]
@=""
[HKEY_CLASSES_ROOT\CLSID\{47775DA0-E874-4EAF-A28C-20C6E2D387A0}\SupportedExtensions]
5、
".dwg"="{72EC5935-3EC3-4e94-A3F1-D2FC478521C2}"
".dws"="{72EC5935-3EC3-4e94-A3F1-D2FC478521C2}"
".dwt"="{72EC5935-3EC3-4e94-A3F1-D2FC478521C2}"
".exe"="{BF7227D0-D41D-48fc-B545-8263F2CDA621}"
".zip"="{BF7227D0-D41D-48fc-B545-8263F2CDA621}"
[HKEY_CLASSES_ROOT\CLSID\{47775DA0-E874-4EAF-A28C-20C
6、6E2D387A0}\TypeLib]
@="{3CA3DBD0-201B-4CB1-BF2B-C33B5D6585A9}"
[HKEY_CLASSES_ROOT\CLSID\{47775DA0-E874-4EAF-A28C-20C6E2D387A0}]
[HKEY_CLASSES_ROOT\CLSID\{72EC5935-3EC3-4E94-A3F1-D2FC478521C2}\InProcServer32]
@="D:\\AUTOCAD2006\\AcSignCore16.dll"
"ThreadingModel"="Apartment"
[HKEY_CLASSES_ROOT\
7、CLSID\{72EC5935-3EC3-4E94-A3F1-D2FC478521C2}\ProgID]
@="AcSignCore.AdskSignDWG.1"
[HKEY_CLASSES_ROOT\CLSID\{72EC5935-3EC3-4E94-A3F1-D2FC478521C2}\Programmable]
@=""
[HKEY_CLASSES_ROOT\CLSID\{72EC5935-3EC3-4E94-A3F1-D2FC478521C2}\TypeLib]
@="{3CA3DBD0-201B-4CB1-BF2B-C33B5D6585A9}"
[HKEY_CLASSES
8、_ROOT\CLSID\{72EC5935-3EC3-4E94-A3F1-D2FC478521C2}]
@="AdskSignDWG"
@="AdskFindSignFile"
2.無法加載配置文件。上次任務(wù)中保存的某些配置信息可能無法恢復(fù)。
原因是HKEY_CURRENT_USER\Software\Autodesk\AutoCAD\R16.2\ACAD-4001:804\FixedProfile\General下的ProfileStorage配置文件路徑丟失,重建即可,一般為Support\Profiles\FixedProfile.aws.在制作綠色版的過程中,導(dǎo)入注冊表后AUT
9、OCAD沒有正確安裝,點(diǎn)確定運(yùn)行后提示沒有配置文件,這時在把注冊表導(dǎo)出并追加配置文件路徑并替換原注冊表文件并重新導(dǎo)入即可.
3.只有全名命令才能識別acad.pgp
可能是acad.pgp文件丟失或?qū)?yīng)的注冊表路徑不同(略)
4.啟動時出現(xiàn)fail to get CommcntrController
原因是"通訊控制中心"出了問題,通訊中心會收集計(jì)算機(jī)的用戶信息并發(fā)送到AUTODESK,所以建議關(guān)閉,
方法一.在注冊表中禁止"通訊中心"(下面是AUTOCAD2006的):
[HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R16.2\A
10、CAD-4001:804\Applications\WSCommCntrAcCon]
"DESCRIPTION"="WSCommCntrAcCon"
"LOADCTRLS"=dword:00000000
"LOADER"="D:\\AutoCAD2006\\WSCommCntrAcCon.arx"
方法二.刪除相關(guān)文件:刪除Autodesk Shared\WSCommCntr1.exe進(jìn)程文件,并同時必須把主目錄下的幾個WSCommCntr*文件一并刪除即可。
方法三.CAD安裝盤里有個CADManagerControl目錄,里面有個CMControl.exe工具是專門設(shè)置AUTOC
11、AD的,用這個可以禁止通訊中心.
5.使用VBA時的錯誤,由于很多人喜歡使用VBA編程語言來開發(fā)AUTOCAD外掛,所以這里提供VBA完整解決方案.
A.如果出現(xiàn)"無法創(chuàng)建VBA工程"
原因是是acax16enu.tlb這個CAD和VBA關(guān)聯(lián)的模塊某有TYPELIB對應(yīng),添加如下注冊表項(xiàng)即可(該文件可以轉(zhuǎn)移到主目錄AUTOCAD2006).
[HKEY_CLASSES_ROOT\TypeLib\{1EFD8E85-7F3B-48E6-9341-3C8B2F60136B}\1.1\0\win32]
@="C:\\Program Files\\Common Files\\Autodesk
12、 Shared\\acax16enu.tlb"
[HKEY_CLASSES_ROOT\TypeLib\{1EFD8E85-7F3B-48E6-9341-3C8B2F60136B}\1.1\0]
B.如果出現(xiàn)VBA沒有安裝,請復(fù)制OFFICE10文件到共享目錄(這里需要注意的是:CAD不象OFFICE等可以把OFFICE10轉(zhuǎn)移到程序目錄運(yùn)行,否則會出現(xiàn)調(diào)用VBA時非法退出的問題),復(fù)制VBA相關(guān)文件到程序主目錄,注冊APC63.dll VBE6.DLL vba6mtrt.dll vb6debug.dll等文件,因?yàn)樵诔绦蚰夸浰圆灰付╒BE6.DLL路徑,如果是原共享目錄則需要在注冊表中
13、指定VBE6.DLL文件路徑
? REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VBA" /F>NUL
? REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VBA" /V "Vbe6DllPath" /T "REG_SZ" /D "%CommonProgramFiles%\Microsoft Shared\VBA\VBA6\VBE6.DLL" /F>NUL
C.如果出現(xiàn)"無法使用用戶窗體",請注冊系統(tǒng)目錄下的FM20.DLL MSSTDFMT.DLL MSSTKPRP.DLL MSXML4.DL
14、L comctl32.ocx控件(可以轉(zhuǎn)移到主目錄,并注冊)
D.有關(guān)VBA版本和兼容性問題的說明.
按照一般原則高版本的兼容低版本,反之,低版本則不能兼容高版本,AUTOCAD2006的VBA使用的版本是6.3.908,實(shí)際上使用的OFFICEXP的內(nèi)核,但OFFICEXP的VBA版本是6.2的,OFFICE2003的則是6.4.9969的。也就是說如果安裝了OFFICEXP在安裝綠色AUTOCAD2006,那么OFFICEXP的VBA將無法使用,如果安裝順序顛倒,那么AUTOCAD2006的VBA將無法使用;如果用戶安裝了OFFICE2003后再安裝AUTOCAD2006綠色版,那
15、么OFFICE2003的VBA將無法使用,反之則都可以使用。所以解決的方法是使用OFFICE2003的VBA替換AUTOCAD2006的VBA下的三個文件(VBE6.DLL,VBE6EXT.OLB,VBE6INTL.DLL)即可,另外也可以替換掉共享目錄的MSO.DLL,MSOINTL.DLL這兩個文件(因?yàn)檫@個兩個文件所在的目錄不一樣,所以不存在很大的問題).最好的解決方法是把VBA文件復(fù)制到程序目錄運(yùn)行(但OFFICE10文件則必須保留在共享目錄)。
另外:OFFICE的VBA和OFFICE共享文件和AUTOCAD的文件列表不同,見下表:
OFFICE:
VBACV10.DLL
V
16、BACV10D.DLL
VBACV20.DLL
VBE6.DLL
VBE6INTL.DLL
VBE6EXT.OLB
MSO.DLL
MSOINTL.DLL
AUTOCAD2006:
APC63.dll
APC60itl.dll
link.exe
mspdb60.dll
vb6debug.dll
vba6mtrt.dll
VBE6.DLL
VBE6INTL.DLL
VBE6EXT.OLB
MSO.DLL
MSOINTL.DLL
6.關(guān)于授權(quán)問題:其實(shí)很簡單自AUTODESK公司2004年開始都統(tǒng)一使用了同一方式的授權(quán)方案,無論是AUTOCAD還是3DSM
17、AX還是其他產(chǎn)品,你只要在目錄下能找到AdskScInst.dll文件則可以使用RUNDLL32 AdskScInst.dll,CdaSysInstall命令快速重新授權(quán)安裝,使用RUNDLL32 AdskScInst.dll,CdaSysUnInstall快速重新卸載,這個東西不知道是哪個牛人發(fā)現(xiàn)的.但是值得注意的是在安裝前一定要段開網(wǎng)絡(luò),否則會出現(xiàn)無法授權(quán)的問題乃至啟動AUTOCAD后沒有任何提示的自動退出,估計(jì)是CAD會使用原來的授權(quán)文件到服務(wù)器上自動查找,如果不對應(yīng)則無法時其啟動.
7.替換相關(guān)路徑以便不向系統(tǒng)寫入文件
為了制作真正的綠色軟件,一般盡量不向系統(tǒng)盤寫入文件,所以這
18、里替換相關(guān)路徑并替換對應(yīng)的注冊表值。同時也可避免啟動CAD時需要指定共享文件路徑問題(可以使用我的專業(yè)工具一次替換)。
C:\Documents and Settings\TUSER\Local Settings\Application Data\Autodesk\AutoCAD 2006\R16.2\chs-->D:\AutoCAD2006
C:\Documents and Settings\TUSER\Application Data\Autodesk\AutoCAD 2006\R16.2\chs-->D:\AutoCAD2006
C:\Program Files\Common Fi
19、les\Autodesk Shared-->D:\AutoCAD2006(同時把Autodesk Shared下的AcDwgFilter和Thumbnail也轉(zhuǎn)移到主目錄,需要手動更改授權(quán)文件位置到主目錄下)
8.如果出現(xiàn)快捷方式無效的提示,請按照提示刪除搜索到的無效的快捷方式。
很奇怪的是AUTOCAD綠化后當(dāng)運(yùn)行時繪圖儀會對全盤的快捷方式進(jìn)行掃描,如果找到無效快捷方式則每次啟動時都會提示。請按照提示找到相關(guān)路徑并刪除即可。
9.保存圖時啟用查看略縮圖時非法操作
因?yàn)闆]有裝DWGVIEVER,所以回出現(xiàn)這個情況。安裝時請安裝該組件,這個組件沒有進(jìn)行綠化。
10.可精簡的部分:
Help:40MB
Sample:40MB
Textures:10MB
acadauto.chm(vba參考):1mb