<<< 前へ TOP 次へ>>>
ver 2.xxからの変更点
全般
- 9x系での動作は破棄されました。
- 文字列の扱いがShiftJISからUTF-16に変更されました。
ただし従来のTextFileのread/writeに関しては従来の互換性を考えて内部でShiftJIS<>UTF-16を相互変換して、ShiftJISとして読み出し・書き出しを行っています。
コードページを指定してTextFileを扱う場合は、新規に追加されたReadTextFileW、WriteTextFileWを使用して下さい。
- SASF.INIやソースファイルのコードページはUTF-16(LE)となります。従来の物を引き続き使用するにはエディタなのでShiftJISからUTF-16(LE)に変更しておいてください。
- Drag&Dropのファイル数制限は撤廃されました(メモリの許すまで)。
- ファイル名の表示の長さは文字数単位からドット数単位に変更になりました。
- MS-DOS風のWildcardのサポートは破棄されました。
- 文字定数が\00~\FF以外に\0000~\FFFFまで拡張されました。必ず2桁、あるいは4桁である必要があります。3桁(\000~\FFF)はエラーになります。
- 正式にマウスボタンの第4ボタン・第5ボタンのキー定義ができるようになりました。
- Copy、Move時に使用するバッファのデフォルトが64KBから256KBに増えました。またバッファの上限が1MBから4MBに増えました。
変更された手続き・判別式
この項目でリストアップされた手続き・判別式は動作が一部変更されています。
- MarkMatchStr, UnmarkMatchStr, MarkMatchStrTrigger, MarkMatchText, UnmarkMatchText, MarkMatchTextTrigger, SetMask, SetWorkMask, MaskCopy, MaskMove, MaskDelete
- 渡された文字列は常に正規表現と解釈されます。
- GetMaskType
- 常に0を返します。
- IntToChar
- $0000~$FFFFまでの値を扱うようになりました。
- CharType
- 値の意味が変わりました。
0 | 1 | 2 |
1WORD文字 | サロゲートペア1文字目 | サロゲートペア2文字目 |
- UpdateNetwork
- 内部実装としてはUpdateDomain > UpdateServerの順に行うようになり、エラーの詳細コードは取得できなくなりました。
注意が必要な手続き・判別式
動作に関して注意が必要なもののリストです。
- unlha関連
- 内部ではUnlhaXXXW系のAPIを使用するようになりました。特に影響を受けるのがレスポンスファイルです。WriteResponseFileWをコードページ1200で使用するか、WriteTextFileWをコードページ1200で使用して作成して下さい。
- 7-zip,UnIso関連
- 内部でUTF-8を使用するようになりました。特に影響を受けるのがレスポンスファイルです。WriteResponseFileWをコードページ65001で使用するか、WriteTextFileWをコードページ65001で使用して作成して下さい。
- CopyStr,LengthStr
- これらの手続きはサロゲートペアを考慮しません。サロゲートペアを1文字として扱うにはCopyStrW,LengthStrW手続きを使用して下さい。
破棄された手続き・判別式
この項目でリストアップされた手続き・判別式は破棄されました。コンパイルは通りますが、動作はしません。
- CharToInt
- SSTPSend
- QuickReboot
- MS-DOS風Wildcardを使用する手続き・判別式
- SetMaskType
- MatchDOSStr
- MatchDOSText
- FileFindMaskStr
- FileFindMaskText
- SelectMaskStr
- SelectMaskText
- 内蔵テキストビュア関連
- InnerTextViewer
- GetITVText
- LoadFromFileToITV
- SaveToFileFromITV
- CloseITV
- SetITVFont
- GetITVFont
- SetITVMode
- GetITVMode
- SetITVColor
- GetITVColor
- CurLeftITV
- CurRightITV
- CurDownITV,CurUpITV
- CurLineTopITV
- CurLineBottomITV
- CurTopITV
- CurBottomITV
- CurScrollITV
- GetColLineITV
- GetColLineFromMouseITV
- SetColLineITV
- SetLButtonFlagITV
- GetMaxLineITV
- GetLineSizeITV
- GetLineCountITV
- AllSelectITV
- ResetSelectITV
- GetSelectInfoITV
- SetSelectInfoITV
- GetSelectStrITV
- GetRectLengthITV
- FindStartITV
- FindDownITV
- FindUpITV
- SPI関連
- GetSPI
- SetSPI
- GetPackSPI
- SetPackSPI
- ListPackGraphic
- LoadPackGraphic
新規に追加された手続き・判別式
ver 3にて新規に追加された手続き・判別式です。
一部の関数で使用するコードページは以下の物を参照して下さい。
コード | コードページ |
Shift_JIS | 0 or 932 |
UTF-16LE | 1200(BOM有り) |
UTF-16BE | 1201(BOM有り) |
x-mac-japanese | 10001 |
EUC_JP | 20932 |
iso-2022-jp | 50220 |
csISO2022JP | 50221 |
iso-2022-jp(SO/SI) | 50222 |
UTF-7 | 65000 |
UTF-8 | 65001 |
UTF-32BE,LE | 使用不可 |
- GetIniDataStrW(ユーザー文字列,文字列1,文字列2,文字列3,文字列4,数字)
- INIファイルから文字列を取得します。
文字列1にはファイル名を指定します。
文字列2にはセクション名を指定します。
文字列3には項目名を指定します。
文字列4には、指定された項目がなかった場合にユーザー文字列に格納される値を指定します。
数字にはINIファイルのコードページを指定します。
ユーザー文字列にその項目の値が格納されます。
- SetIniDataStrW(文字列1,文字列2,文字列3,文字列4,数字)
- INIファイルに文字列を書き込みます。
文字列1にはファイル名を指定します。
文字列2にはセクション名を指定します。
文字列3には項目名を指定します。
文字列4には格納するデータを指定します。
数字にはINIファイルのコードページを指定します。
- GetIniDataIntW(ユーザー変数,文字列1,文字列2,文字列3,数字1,数字2)
- INIファイルからデータを取得します。
文字列1にはファイル名を指定します。
文字列2にはセクション名を指定します。
文字列3には項目名を指定します。
数字1には、指定された項目がなかった場合にユーザー変数に格納される値を指定します。
数字2にはINIファイルのコードページを指定します。
ユーザー変数にその項目の値が格納されます。
- SetIniDataIntW(文字列1,文字列2,文字列3,数字1,数字2)
- INIファイルに数値を書き込みます。
文字列1にはファイル名を指定します。
文字列2にはセクション名を指定します。
文字列3には項目名を指定します。
数字1には書き込む数値を指定します。
数字2にはINIファイルのコードページを指定します。
- ReadTextFileW(ユーザー文字列,文字列,数字1,数字2,数字3)
- 基本的にReadTextFileExと同じです。
文字列で指定したファイルを、数字1で指定された位置(先頭が0)から数字2で指定されたバイト数、読み込みます。
数字3はファイルのコードページを指定します。
成功した場合、#_RESULTに0が入ります。
失敗した場合は#_RESULTに0以外の数字が入ります。詳細はGetSysErrMsgで取得できます。
- WriteTextFileW(文字列1,文字列2,数字1,数字2)
- 文字列1で指定されたファイルに、数字1で指定された位置(先頭が0)から文字列2を書込みます。
数字2は書き込む際のコードページを指定します。
成功した場合、#_RESULTに0が入ります。
失敗した場合は#_RESULTに0以外の数字が入ります。詳細はGetSysErrMsgで取得できます。
- CopyStrW(ユーザー文字列,文字列,数字1,数字2)
- 文字列の数字1番目から数字2文字分、ユーザー文字列に代入します。
CopyStrと違い、サロゲートペアを1文字として扱います。
- LengthStrW(ユーザー変数,文字列)
- 文字列の長さをユーザー変数に代入します。
LengthStrと違い、サロゲートペアも1文字としてカウントしています。
- LengthStrA(ユーザー変数,文字列)
- 文字列を内部で一旦Ansi文字列に変換して、その長さをユーザー変数に格納します。なお、IsSafeConvW2A判別式で真の文字列を渡さないと正しい値は返ってこないので注意して下さい。
- NormalizeStr(ユーザー文字列,文字列,数字)
- 文字列を、数字で指定した方法で正規化してユーザー文字列に返します。
数字 | 正規化の方法 |
---|
0 | NFC |
1 | NFD |
2 | NFKC |
3 | NFKD |
変換に失敗した場合は0を、成功した場合は1を、数字が不正だった場合は-1を#_RESULTに返します
- WideCharToInt(ユーザー変数,文字列)
- 文字列の最初の一文字目のコードをそのまま数値としてユーザー変数に格納します。文字列が空の場合、なにもせず、#_RESULTに0を返します。
- InsertStrW(ユーザー文字列,文字列,数字)
- サロゲートペアを1文字としてカウントするInsertStr
- DeleteStrW(ユーザー文字列,数字1,数字2)
- サロゲートペアを1文字としてカウントするDeleteStr
- PosStrW(ユーザー変数,文字列1,文字列2)
- サロゲートペアを1文字としてカウントするPosStr
- PosTextW(ユーザー変数,文字列1,文字列2,数字)
- サロゲートペアを1文字としてカウントするPosText
- ReplaceTextA(ユーザー文字列,文字列1,文字列2,数字)
- ASCIIのA-Zだけを大文字・小文字の同一視を行うReplaceText(ver 2互換用)
- AnsiUpperStr(ユーザー文字列,文字列)
- 全ての小文字を大文字に変換して、ユーザー文字列に返します。
- AnsiLowerStr(ユーザー文字列,文字列)
- 全ての大文字を小文字に変換して、ユーザー文字列に返します。
- MakeResponseFileW(文字列,数字)
- 文字列で指定したファイル名でレスポンスファイルを作成します。
数字は作成するファイルのコードページです。
ファイルの内容は、カレントファイル、又はマークされているファイルがあれば、マークファイル全部をテキストで書き出したものです。
ファイル名にスペースがあった場合は""でくくられます。
このファイルは主にUnXXXで使用されることを前提にされています。
失敗した場合、#_RESULTには0以外の数が入ります。-1の場合はリストを作るべきファイルがなかったことを示します。その他の場合、詳細はGetSysErrMsgで取得できます。
- UpdateDomain()
- Domain直下のリソースを読み込み直します。なお、サーバーデータに関しては更新しませんので、必要ならば別途UpdateServer手続きで更新してください。
- UpdateServer(文字列)
- 文字列で指定したサーバーの情報を更新します。
- GetDomainName(ユーザー文字列)
- ユーザー文字列に所属しているドメイン、又はワークグループの名前を返します。
所属していない場合は空文字列が返ります。
- GetServerList(ユーザー文字列)
- 自分が所属しているドメイン、又はワークグループに所属しているサーバーの一覧をユーザー文字列に返します。各サーバー名は改行($_CR+$_LF)で区切られています。
所属していない場合は空文字列が返ります。
- GetShortNameLen(数字,ユーザー変数)
- 数字で指定した窓の短いファイル名(含む拡張子)を表示するドット数をユーザー変数に格納します。
- SetShortNameLen(数字1,数字2)
- 数字1で指定した窓の短いファイル名(含む拡張子)を表示するドット数を数字2で指定した数にします。
- GetShortFileNameLen(数字,ユーザー変数)
- 数字で指定した窓の短いファイル名(拡張子を含まない)を表示するドット数をユーザー変数に格納します。
- SetShortFileNameLen(数字1,数字2)
- 数字1で指定した窓の短いファイル名(拡張子を含まない)を表示するドット数を数字2で指定した数にします。
- GetShortExtLen(数字,ユーザー変数)
- 数字で指定した窓の短い拡張子を表示するドット数をユーザー変数に格納します。
- SetShortExtLen(数字1,数字2)
- 数字1で指定した窓の短い拡張子を表示するドット数を数字2で指定した数にします。
- GetCompMethodLen(数字,ユーザー変数)
- 数字で指定した窓の圧縮方式を表示するドット数をユーザー変数に格納します。
- SetCompMethodLen(数字1,数字2)
- 数字で指定した窓の圧縮方式を表示するドット数を数字2で指定した数にします。
- GetForeSpace(数字,ユーザー変数)
- 数字で指定した窓の、マーク文字の手前にあけるドット数をユーザー変数に格納します。
- SetForeSpace(数字1,数字2)
- 数字1で指定した窓の、マーク文字の手前にあけるドット数を数字2で指定した数にします。
- GetItemSpace(数字,ユーザー変数)
- 数字で指定した窓の、表示項目間にあけるドット数をユーザー変数に格納します。
- SetItemSpace(数字1,数字2)
- 数字1で指定した窓の、表示項目間にあけるドット数を数字2で指定した数にします。
- GetRearSpace(数字,ユーザー変数)
- 数字で指定した窓の、最後の表示項目の後ろにあけるドット数をユーザー変数に格納します。
- SetRearSpace(数字1,数字2)
- 数字1で指定した窓の、最後の表示項目の後ろにあけるドット数を数字2で指定した数にします。
- GetScriptLogMode(ユーザー変数)
- スクリプトログを出力するかどうかの取得をします。
出力する場合、SASF.EXEのあるフォルダにSASF.LOGとして「追加モード」でログを書き出します。
- SetScriptLogMode(数字)
- スクリプトログを出力するかどうかを設定します。
出力する場合、SASF.EXEのあるフォルダにSASF.LOGとして「追加モード」でログを書き出します。
- IsSafeConvW2A(文字列)
- 文字列が「安全に」UTF-16からAnsiStringにコンバートできるならば真
- IsWow64()
- SASFがWow64上で稼働していれば真。というか今のところ常に真を返します。将来的にx64版SASFなんぞがでることがあれば、偽になることがあるかもしれません。
- IsX86()
- OSが32bitの場合に真
- IsX64()
- OSが64bitの場合に真
<<< 前へ TOP 次へ>>>