4

彼ら!ライセンスファイルをdmgに添付するために使用できるコマンドラインはありますか?

どうもありがとうございます

(エディターで問題が発生しているので、テキストに「奇妙なもの」が表示されている場合はご容赦ください)

4

2 に答える 2

5

私はあなたのためのブログエントリ(ここにリンクされています)を見つけました。そこでは、コマンドラインからソフトウェアライセンス契約をディスクイメージファイルに添付するために呼び出すことができるPythonスクリプトを書いています。

10.6以降で動作します。

彼の元のブログエントリによると:

このスクリプトはPython2.6または2.7で実行されます。RezヘッダーとFlatCarbonヘッダーのデフォルトの場所がマシン上で異なる場合は、コマンドラインオプション--rezおよび--flat-carbonを使用して正しい場所を指定する必要があります。

彼のスクリプト(このリンクをクリックして表示)は、次のように簡単に呼び出すことができます。

./licenseDMG.py <dmgFile> <licenseFile>
于 2012-01-24T09:53:21.427 に答える
1

コマンドがサポートとオプションhdiutilをサポートしなくなったため、この新しい回答を作成しました。そのため、新しいコマンドで同じことを実行し、plist形式のxmlファイルでslasを準備しました。unflattenflattenudifrez

2つのライセンスファイルのテンプレートの構造はこれです

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>LPic</key>
    <array>
        <dict>
            <key>Attributes</key>
            <string>0x0000</string>
            <key>Data</key>
            <data>
            AAAAAgAAAAAAAAAIAAMAAA==
            </data>
            <key>ID</key>
            <string>5000</string>
            <key>Name</key>
            <string></string>
        </dict>
    </array>
    <key>RTF </key>
    <array>
        <dict>
            <key>Attributes</key>
            <string>0x0000</string>
            <key>Data</key>
            <data>

... here goes the English RTF file codified in base64

            </data>
            <key>ID</key>
            <string>5000</string>
            <key>Name</key>
            <string>English SLA</string>
        </dict>
        <dict>
            <key>Attributes</key>
            <string>0x0000</string>
            <key>Data</key>
            <data>

... here goes the Spanish RTF file codified in base64
                
            </data>
            <key>ID</key>
            <string>5003</string>
            <key>Name</key>
            <string>Spanish SLA</string>
        </dict>
    </array>
    <key>STR#</key>
    <array>
        <dict>
            <key>Attributes</key>
            <string>0x0000</string>
            <key>Data</key>
            <data>
            AAYNRW5nbGlzaCB0ZXN0MQVBZ3JlZQhEaXNhZ3JlZQVQcmludAdT
            YXZlLi4ueklmIHlvdSBhZ3JlZSB3aXRoIHRoZSB0ZXJtcyBvZiB0
            aGlzIGxpY2Vuc2UsIGNsaWNrICJBZ3JlZSIgdG8gYWNjZXNzIHRo
            ZSBzb2Z0d2FyZS4gIElmIHlvdSBkbyBub3QgYWdyZWUsIHByZXNz
            ICJEaXNhZ3JlZS4i
            </data>
            <key>ID</key>
            <string>5000</string>
            <key>Name</key>
            <string>English buttons</string>
        </dict>
        <dict>
            <key>Attributes</key>
            <string>0x0000</string>
            <key>Data</key>
            <data>
            AAYHRW5nbGlzaAVBZ3JlZQhEaXNhZ3JlZQVQcmludAdTYXZlLi4u
            e0lmIHlvdSBhZ3JlZSB3aXRoIHRoZSB0ZXJtcyBvZiB0aGlzIGxp
            Y2Vuc2UsIHByZXNzICJBZ3JlZSIgdG8gaW5zdGFsbCB0aGUgc29m
            dHdhcmUuICBJZiB5b3UgZG8gbm90IGFncmVlLCBwcmVzcyAiRGlz
            YWdyZWUiLg==
            </data>
            <key>ID</key>
            <string>5002</string>
            <key>Name</key>
            <string>English</string>
        </dict>
        <dict>
            <key>Attributes</key>
            <string>0x0000</string>
            <key>Data</key>
            <data>
            AAYHRXNwYZZvbAdBY2VwdGFyCk5vIGFjZXB0YXIISW1wcmltaXIK
            R3VhcmRhci4uLsBTaSBlc3SHIGRlIGFjdWVyZG8gY29uIGxvcyB0
            jnJtaW5vcyBkZSBlc3RhIGxpY2VuY2lhLCBwdWxzZSAiQWNlcHRh
            ciIgcGFyYSBpbnN0YWxhciBlbCBzb2Z0d2FyZS4gRW4gZWwgc3Vw
            dWVzdG8gZGUgcXVlIG5vIGVzdI4gZGUgYWN1ZXJkbyBjb24gbG9z
            IHSOcm1pbm9zIGRlIGVzdGEgbGljZW5jaWEsIHB1bHNlICJObyBh
            Y2VwdGFyLiI=
            </data>
            <key>ID</key>
            <string>5003</string>
            <key>Name</key>
            <string>Spanish</string>
        </dict>
    </array>
    <key>TMPL</key>
    <array>
        <dict>
            <key>Attributes</key>
            <string>0x0000</string>
            <key>Data</key>
            <data>
            E0RlZmF1bHQgTGFuZ3VhZ2UgSUREV1JEBUNvdW50T0NOVAQqKioq
            TFNUQwtzeXMgbGFuZyBJRERXUkQebG9jYWwgcmVzIElEIChvZmZz
            ZXQgZnJvbSA1MDAwRFdSRBAyLWJ5dGUgbGFuZ3VhZ2U/RFdSRAQq
            KioqTFNURQ==
            </data>
            <key>ID</key>
            <string>128</string>
            <key>Name</key>
            <string>LPic</string>
        </dict>
    </array>
    <key>styl</key>
    <array>
        <dict>
            <key>Attributes</key>
            <string>0x0000</string>
            <key>Data</key>
            <data>
            AAMAAAAAAAwACQAUAAAAAAAAAAAAAAAAACcADAAJABQBAAAAAAAA
            AAAAAAAAKgAMAAkAFAAAAAAAAAAAAAA=
            </data>
            <key>ID</key>
            <string>5000</string>
            <key>Name</key>
            <string>English SLA</string>
        </dict>
        <dict>
            <key>Attributes</key>
            <string>0x0000</string>
            <key>Data</key>
            <data>
            AAMAAAAAAAwACQAVAAAAAAAAAAAAAAAAACoADAAJABUBAAAAAAAA
            AAAAAAAALgAMAAkAFQAAAAAAAAAAAAA=
            </data>
            <key>ID</key>
            <string>5003</string>
            <key>Name</key>
            <string>Spanish SLA</string>
        </dict>
    </array>
</dict>
</plist>

英語のslaファイルとスペイン語のslaファイルに対応する2つのrtfファイルを適切な場所でbase64エンコードすることができました。

他の言語を使用している場合は、テンプレートファイル内の他のコンテンツの一部を慎重に変更する必要があることに注意してください。しかし、少なくとも、私はあなたに仕事を始めるための何かを与えることができます。

于 2020-11-14T16:49:07.987 に答える