Vla-put-action
- 構文
- (vla-put-action vla-object action)
- 機能
- 図面で実行するセキュリティオプションを設定する。
- 引数
-
- vla-object … SecurityParams の VLA オブジェクト
- action … AcadSecurityParamsType 列挙型。以下の定数の和。
- ACADSECURITYPARAMS_ENCRYPT_DATA : 1 (図面暗号化)
- ACADSECURITYPARAMS_ENCRYPT_PROPS : 2 (図面プロパティ暗号化)
- ACADSECURITYPARAMS_SIGN_DATA : 16 (デジタル署名)
- ACADSECURITYPARAMS_ADD_TIMESTAMP : 32 (タイムスタンプ)
- 戻り値
- nil
- MEMO :各定数はセキュリティ関連操作を表す。Action プロパティを使用するとき、一連の操作のある時点で、Action プロパティを定数 ACADSECURITYPARAMS_ENCRYPT_DATA、定数 ACADSECURITYPARAMS_SIGN_DATA、またはその両方に設定する必要がある。
- 複数のセキュリティ関連操作を指定するには、それらの操作を表す定数を追加する。
ex. 図面に署名し、タイムスタンプを使用する場合。 ACADSECURITYPARAMS_SIGN_DATA + ACADSECURITYPARAMS_ADD_TIMESTAMP 16 + 32 = 48
- サンプル
(setq secparam (vla-getinterfaceobject (vlax-get-acad-object) (strcat "autocad.securityparams.18"))) ;ACAD 2012 ; 取得 (setq sec-act (vla-get-Action secparam)) (setq sec-alg (vla-get-Algorithm secparam)) (setq sec-klen (vla-get-KeyLength secparam)) (setq sec-pwd (vla-get-password secparam)) (setq sec-pname (vla-get-ProviderName secparam)) (setq sec-ptype (vla-get-ProviderType secparam)) ; 設定 (vla-put-Action secparam 1) ;; ACADSECURITYPARAMS_ENCRYPT_DATA (vla-put-Algorithm secparam 26625) ;; ACADSECURITYPARAMS_ALGID_RC4 (vla-put-KeyLength secparam 40) ;; デフォルト (vla-put-password secparam "MyPass") ;; パスワード (vla-put-ProviderName secparam "Microsoft Base Cryptographic Provider v1.0") ;; デフォルト (vla-put-ProviderType secparam 1) ;; デフォルト (setq *ActDoc* (vla-get-ActiveDocument (vlax-get-Acad-Object))) (setq fileName "c:\\temp\\passwordFile.dwg") (setq version 48) ;; 2010 DWG (vlax-invoke-method *actdoc* 'SaveAs fileName version secparam)
関連事項