このページについて | ||||||||||||||||||||||||||
このページは、mura's home の AutoCAD掲示板 で、当方の発言(書込み)がある以下の掲示板の内容です。
タイトルおよび質問内容は上記より引用しています。 引用した質問内容は、バックカラーが となっています。 当方の発言は、バックカラーが となっています。 その他の著作権者の掲載許可を得ていない発言内容は削除(リンクを除く)しています。 また、当方では、削除部分の正当な著作権保持者を判断出来ませんので、 ご連絡を頂いても、復活させることは出来ません。ご了承下さい。
|
退職した前任者がvb.netで作った
「全てのレイアウトの図面データ(図面枠の内容など)を一括して変更する」
というコマンドを、レイアウト8個&ビューポート54個という大きな図面にあてたところ、とても重い処理になって途中でフリーズします。
その際、フリーズする前に
!△
あなたのライセンスは無効です。オートデスク認定リセラーにご連絡ください。
とメッセージが出てCADが終了することがあります。
ライセンスは切れていませんし、他の作業をしてるときはこのようなメッセージはでません。
なぜなのでしょうか?
また、このような経験をなさったことのある方はいらっしゃいませんでしょうか?
お知恵をお貸しください。
環境はメカニカル2007。
ちなみに私は、中途で入社したこの会社で、autocad
& プログラミング初心者にして、いきなり前任者(既に退職)がカスタマイズしたautocadのデータの保守を任されてしまった者です。
著作権者の許可を得ていないため削除
>あなたのライセンスは無効です。オートデスク認定リセラーにご連絡ください。
あります(年に数度程度)
#バージョンが異なるので少し文面が異なりますが、画像は以下
#http://www.geocities.jp/error_in_autocad/License_Error/License_Error.htm
以下推測です。
AutoCADは起動時以外にもライセンスを確認しており、
(運悪くちょうど)重い図面の処理の際にAutoCADがライセンスの確認を試みたが、
(CPUに余裕が無くて時間切れで?)確認が出来なかった、
のでは?と思われます。
ので、対策は、
(1)PC(CPU)の性能を上げる
(2)データ(または処理の対象)を分けて負荷を軽くする
(3)Doevents(VBAならこうですが、vb.netは知りません)を追加する
(ただし、Doeventsを多用すると、AutoCAD自身のエラーの確率が高くなります)
または、
(4)OSを再起動、不必要なソフトは起動させないで、再度処理してみる
ぐらいでしょうか?
毎回必ず発生するのであれば、かなり重い処理と思われますので、
とりあえず、(2)または(3)を試してみてください。
著作権者の許可を得ていないため削除
解決になっていますが、参考までに。
VB(vb.netで使用できるかはわかりません)ならばDoeventsの代わりに、
Visual
Basic で SetWaitableTimer を使用する方法
http://support.microsoft.com/default.aspx/kb/231298/ja
のWait関数がいいかもしれません。
指定秒間処理を一時停止できます。
#Doeventsは処理中のCPUの使用率は100%ですが、
#これは(他に負荷がなければ)0%となります
#ただし、AutoCADがコマンド可能な状態となるので注意が必要です
#VBAなら、一箇所修正の必要(Application.Name ←
App.EXEName)があります
#Waitの引数lNumberOfSecondsをDoubleにすれば、秒以下も指定可能です
今回の対策に有効かどうかは不明ですが。。。