Results 1 to 3 of 3

Thread: AutoLispで図面プロパティの[作成日時][更新日時]を取得する方法

  1. #1
    Member
    Join Date
    2008-12
    Posts
    9
    Login to Give a bone
    0

    Default AutoLispで図面プロパティの[作成日時][更新日時]を取得する方法

    こんにちは!
    前回に引き続き質問させていただきます。

    知りたい内容は、タイトルどおり
    AutoLispで図面プロパティの[作成日時][更新日時]を取得する方法です。

    私が試した方法は以下の3パターンです。
    ===================================
    ①AutoLISP ファイル処理関数(vl-file-systime)
    ・詳細
     (vl-file-systime " filename")
     指定されたファイルが最後に更新された日時を返します。
    ・結果
     現在実行しているファイルは更新日取得に失敗する。(開いていないファイルは.txtでも取得可能)
    ・問題点
     作成日時を取得する関数がヘルプに載っていない。
    ===================================
    ②SummaryInfoオブジェクト
    ・詳細
     VBA クラス名:
     AcadSummaryInfo
     作成時に用いる項目:
     なし
     経由する項目:
     Document.SummaryInfo
    ・問題点
     図面の他のプロパティを取得できるが、なぜか[作成日時][更新日時]のプロパティがない。
    ===================================
    ③システム変数 TDCREATE TDUPDATE
    ・詳細
     TDCREATE
      図面が作成された、地方時での日付と時刻が格納されます。
     TDUPDATE
      図面が最後に更新/保存された、地方時での日付と時刻が格納されます。
    ・結果
     実際のプロパティが以下の場合、
     →[作成日時]2007年9月12日 13:58:09
     →[更新日時]2009年7月8日 15:37:35
     コマンド実行結果は
     →TDCREATE = 2454356.58205376 (読み込み専用)
     →TDUPDATE = 2455021.65110007 (読み込み専用)
     となる。
    ・問題点
     コマンドの実行結果はユリウス暦で出ているようだが、変換するコマンドがない。
     自分で処理を作るのはちょっと手間がかかりそう・・・
    ===================================

    以上3パターンは調べましたが取得できませんでした。
    すぐに取得できそうなプロパティなのですが、意外とてこずっています・・・(><)

    どなたか情報をご存知でしたら、よろしくお願いいたします。

  2. #2
    Member
    Join Date
    2009-02
    Posts
    7
    Login to Give a bone
    0

    Default Re: AutoLispで図面プロパティの[作成日時][更新日時]を取得する方法

    >③システム変数 TDCREATE TDUPDATE
    >・問題点
    > コマンドの実行結果はユリウス暦で出ているようだが、変換するコマンドがない。
    > 自分で処理を作るのはちょっと手間がかかりそう・・・

    http://autocad.xarch.at/stdlib/
    STDTIME.lspの(STD-DATE->DATLST)を使用する。

    もう一つは、Windowsの Scripting.FileSystemObject オブジェクトを使用する。
    Scripting.FileSystemObject で検索すれば情報が見つかります。

  3. #3
    Member
    Join Date
    2008-12
    Posts
    9
    Login to Give a bone
    0

    Default Re: AutoLispで図面プロパティの[作成日時][更新日時]を取得する方法

    Quote Originally Posted by liki.umrk View Post
    >③システム変数 TDCREATE TDUPDATE
    >・問題点
    > コマンドの実行結果はユリウス暦で出ているようだが、変換するコマンドがない。
    > 自分で処理を作るのはちょっと手間がかかりそう・・・

    http://autocad.xarch.at/stdlib/
    STDTIME.lspの(STD-DATE->DATLST)を使用する。

    もう一つは、Windowsの Scripting.FileSystemObject オブジェクトを使用する。
    Scripting.FileSystemObject で検索すれば情報が見つかります。
    liki.umrkさん

    回答ありがとうございます。
    的確な回答で、STDTIME.lspを使用したことですぐ解決しました。
    質問して良かったです♪ありがとうございました!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •