《AUTOCAD綠色軟件制作心得》由會(huì)員分享,可在線閱讀,更多相關(guān)《AUTOCAD綠色軟件制作心得(6頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、AUTOCAD綠色軟件制作心得
[作者:HUNRYBECKY??轉(zhuǎn)貼自:本站原創(chuàng)??點(diǎn)擊數(shù):30250??更新時(shí)間:2007-4-19??文章錄入:onegreen]
使用了近10天的時(shí)間研究AUTOCAD2006綠色版本,遇到很多問題,這里集中整理下問題和解決問題的思路。
1.加載 acstandards服務(wù)時(shí)出錯(cuò)
分析:這個(gè)問題在制作綠色版的過程中遇到,也看到很多使用非綠色版的人也遇到這個(gè)問題,對(duì)全球網(wǎng)站進(jìn)行搜索,甚至在AUTODESK公司的網(wǎng)站也找不到答案,只是說可能是注冊(cè)表的問題,按照這個(gè)思路,本人花了幾天的時(shí)間對(duì)注冊(cè)表進(jìn)行了逐項(xiàng)測(cè)試,對(duì)acstandards服務(wù)進(jìn)行了分析
2、,發(fā)現(xiàn)acstandards服務(wù)實(shí)際就是AcStd.arx這個(gè)DLL文件,但注冊(cè)表中找不到這個(gè)文件,最后使用DEPEND發(fā)現(xiàn)與這個(gè)文件相關(guān)的一個(gè)動(dòng)態(tài)連接庫(kù)文件AcStMgr.dll,對(duì)其分析測(cè)試,發(fā)現(xiàn)注冊(cè)表CLISD中如果沒有項(xiàng)對(duì)應(yīng)的項(xiàng)出現(xiàn)就會(huì)出現(xiàn)這個(gè)問題,解決方法很簡(jiǎn)單,增加注冊(cè)表項(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改名或刪除,這樣也不會(huì)啟動(dòng)時(shí)調(diào)用該文件,這個(gè)模塊好象并不影響操作,這個(gè)模塊還可以在工具\(yùn)應(yīng)用程序中重新加載
另外,如果打開圖檔時(shí)還出現(xiàn)無法加載ACSIGN服務(wù)的錯(cuò)誤,可導(dǎo)入如下注冊(cè)表
[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)入注冊(cè)表后AUT
9、OCAD沒有正確安裝,點(diǎn)確定運(yùn)行后提示沒有配置文件,這時(shí)在把注冊(cè)表導(dǎo)出并追加配置文件路徑并替換原注冊(cè)表文件并重新導(dǎo)入即可.
3.只有全名命令才能識(shí)別acad.pgp
可能是acad.pgp文件丟失或?qū)?yīng)的注冊(cè)表路徑不同(略)
4.啟動(dòng)時(shí)出現(xiàn)fail to get CommcntrController
原因是"通訊控制中心"出了問題,通訊中心會(huì)收集計(jì)算機(jī)的用戶信息并發(fā)送到AUTODESK,所以建議關(guān)閉,
方法一.在注冊(cè)表中禁止"通訊中心"(下面是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)程文件,并同時(shí)必須把主目錄下的幾個(gè)WSCommCntr*文件一并刪除即可。
方法三.CAD安裝盤里有個(gè)CADManagerControl目錄,里面有個(gè)CMControl.exe工具是專門設(shè)置AUTOC
11、AD的,用這個(gè)可以禁止通訊中心.
5.使用VBA時(shí)的錯(cuò)誤,由于很多人喜歡使用VBA編程語言來開發(fā)AUTOCAD外掛,所以這里提供VBA完整解決方案.
A.如果出現(xiàn)"無法創(chuàng)建VBA工程"
原因是是acax16enu.tlb這個(gè)CAD和VBA關(guān)聯(lián)的模塊某有TYPELIB對(duì)應(yīng),添加如下注冊(cè)表項(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沒有安裝,請(qǐng)復(fù)制OFFICE10文件到共享目錄(這里需要注意的是:CAD不象OFFICE等可以把OFFICE10轉(zhuǎn)移到程序目錄運(yùn)行,否則會(huì)出現(xiàn)調(diào)用VBA時(shí)非法退出的問題),復(fù)制VBA相關(guān)文件到程序主目錄,注冊(cè)APC63.dll VBE6.DLL vba6mtrt.dll vb6debug.dll等文件,因?yàn)樵诔绦蚰夸浰圆灰付╒BE6.DLL路徑,如果是原共享目錄則需要在注冊(cè)表中
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)"無法使用用戶窗體",請(qǐng)注冊(cè)系統(tǒng)目錄下的FM20.DLL MSSTDFMT.DLL MSSTKPRP.DLL MSXML4.DL
14、L comctl32.ocx控件(可以轉(zhuǎn)移到主目錄,并注冊(cè))
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下的三個(gè)文件(VBE6.DLL,VBE6EXT.OLB,VBE6INTL.DLL)即可,另外也可以替換掉共享目錄的MSO.DLL,MSOINTL.DLL這兩個(gè)文件(因?yàn)檫@個(gè)兩個(gè)文件所在的目錄不一樣,所以不存在很大的問題).最好的解決方法是把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í)很簡(jiǎn)單自AUTODESK公司2004年開始都統(tǒng)一使用了同一方式的授權(quán)方案,無論是AUTOCAD還是3DSM
17、AX還是其他產(chǎn)品,你只要在目錄下能找到AdskScInst.dll文件則可以使用RUNDLL32 AdskScInst.dll,CdaSysInstall命令快速重新授權(quán)安裝,使用RUNDLL32 AdskScInst.dll,CdaSysUnInstall快速重新卸載,這個(gè)東西不知道是哪個(gè)牛人發(fā)現(xiàn)的.但是值得注意的是在安裝前一定要段開網(wǎng)絡(luò),否則會(huì)出現(xiàn)無法授權(quán)的問題乃至啟動(dòng)AUTOCAD后沒有任何提示的自動(dòng)退出,估計(jì)是CAD會(huì)使用原來的授權(quán)文件到服務(wù)器上自動(dòng)查找,如果不對(duì)應(yīng)則無法時(shí)其啟動(dòng).
7.替換相關(guān)路徑以便不向系統(tǒng)寫入文件
為了制作真正的綠色軟件,一般盡量不向系統(tǒng)盤寫入文件,所以這
18、里替換相關(guān)路徑并替換對(duì)應(yīng)的注冊(cè)表值。同時(shí)也可避免啟動(dòng)CAD時(shí)需要指定共享文件路徑問題(可以使用我的專業(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(同時(shí)把Autodesk Shared下的AcDwgFilter和Thumbnail也轉(zhuǎn)移到主目錄,需要手動(dòng)更改授權(quán)文件位置到主目錄下)
8.如果出現(xiàn)快捷方式無效的提示,請(qǐng)按照提示刪除搜索到的無效的快捷方式。
很奇怪的是AUTOCAD綠化后當(dāng)運(yùn)行時(shí)繪圖儀會(huì)對(duì)全盤的快捷方式進(jìn)行掃描,如果找到無效快捷方式則每次啟動(dòng)時(shí)都會(huì)提示。請(qǐng)按照提示找到相關(guān)路徑并刪除即可。
9.保存圖時(shí)啟用查看略縮圖時(shí)非法操作
因?yàn)闆]有裝DWGVIEVER,所以回出現(xiàn)這個(gè)情況。安裝時(shí)請(qǐng)安裝該組件,這個(gè)組件沒有進(jìn)行綠化。
10.可精簡(jiǎn)的部分:
Help:40MB
Sample:40MB
Textures:10MB
acadauto.chm(vba參考):1mb