LOTUSSCRIPT 言語
Alias 節を使用して整数を指定することはできません。整数を指定すると、不正に宣言された関数を呼び出す時点でランタイムエラーとなります
LenB、LenBP、
LOF
次の属性を返しません。ATTR_HIDDEN、ATTR_ARCHIVE、ATTR_VOLUME、ATTR_SYSTEM
Input$、InputB、
InputB$、Line Input、
Print、Write #
LotusScript では、UNIX ファイルシステムのセキュリティがあらゆる面で尊重されます。この違いは、Kill、Open、RmDir に影響します。
UNIX 上ではドライブ名を使用しません。すべてのデバイスはルートディレクトリの下に配置されます。ドライブ名を含むパス名を使用すると、エラーとなることがあります。%Include 命令を使用する場合、これはコンパイルエラーとして扱われ、その他の場合は実行エラーとして扱われます。(UNIX では ":" を使用できるため、ファイル名で、ステートメント Dir$("a:")を使用できます。カレントディレクトリ内で a: というファイルが検索されます。)
UNIX では「/」文字 (スラッシュ) をディレクトリ区切り記号として使用しますが、DOS/Windows プラットフォームでは「\」(円記号) を使用します。LotusScript では、次の制限に従ってスラッシュと円記号を使用します。
円記号は他のプラットフォーム上では常にパス区切り記号になるため、LotusScript では円記号を含む UNIX ファイル名を使用できません。ただし、パス名は使用できます。
UNIX では、行終了文字として改行 (ASCII 10) 文字を使用します。他のプラットフォーム上では他の文字を使用します。この違いがあるため、同じ LotusScript のコードを使用して操作したファイルを異なるプラットフォーム上で実行すると、そのサイズは異なることがあります。たとえば、Macintosh プラットフォーム上では復帰文字を行終了文字として使用するため、このプラットフォーム上で作成したテキストファイルの長さは、UNIX 上で作成したファイルと同じになります。Windows プラットフォーム上では 2 文字の行終了文字を使用するため、作成したテキストファイルは同じソースコードを使用したとしても UNIX 上で作成したファイルより大きくなります。
その他の違い
UNIX には共有ライブラリ内のルーチンに番号を付ける表記法がないため、Declare ステートメントの Alias 節を使用して別名として整数を指定することはできません。
ファイルパスの文字列にワイルドカードを使用できる場合は、「*」文字と「?」文字だけでなく UNIX の正規表現が使用できます。ただし、ファイルパス文字列で正規表現を使用すると、そのスクリプトはプラットフォームに依存することになります。
LIKE 演算子では、UNIX シェルと同じ正規表現の構文を使用しません。LotusScript の正規表現を使用します。
UNIX プラットフォーム用の LotusScript リリース 3 では、OLE はサポートされていません。この違いは、CreateObject、GetObject、IsObject、IsUnknown に影響します。CreateObject 関数と GetObject 関数は、UNIX プラットフォーム上で実行するとランタイムエラーとなります。IsObject 関数は、変数がネイティブなオブジェクトを参照するか製品固有のオブジェクトを参照するかを指示します。ただし、UNIX プラットフォーム上には OLE オブジェクトがないため、OLE オブジェクトについては指示しません。UNIX 上では、Variant 型の式で V_UNKNOWN 値を受け取る方法がないため、IsUnknown 関数は常に FALSE を返します。
関連項目