次の方法で共有


StrNCatW 関数 (shlwapi.h)

1 つの文字列の先頭から別の文字列の末尾に、指定した数の文字を追加します。

メモ この関数または StrCatN マクロは使用しないでください。 代替関数については、「解説」を参照してください。
 

構文

PWSTR StrNCatW(
  [in, out] PWSTR  psz1,
            PCWSTR psz2,
            int    cchMax
);

パラメーター

[in, out] psz1

種類: PTSTR

関数が psz2 の文字を追加する null で終わる文字列へのポインター。 結合された文字列と終端の null 文字を保持するのに十分な大きさにする必要があります。

psz2

種類: PCTSTR

追加する null で終わる文字列へのポインター。

cchMax

型: int

psz2 の先頭から psz1 に追加する文字数。

戻り値

種類: PTSTR

結合された文字列を保持する psz1 へのポインターを返します。

注釈

セキュリティの警告: この関数を誤って使用すると、アプリケーションのセキュリティが損なわれる可能性があります。 最初の引数 psz1 は、 psz2 と終了 '\0' を保持するのに十分な大きさにする必要があります。それ以外の場合は、バッファー オーバーランが発生する可能性があります。 アクセス違反が発生した場合、バッファー オーバーランによってアプリケーションに対するサービス拒否攻撃が発生する可能性があります。 最悪の場合、バッファー オーバーランにより、特に psz1 がスタック ベースのバッファーである場合に、攻撃者が実行可能コードをプロセスに挿入する可能性があります。 最後の引数 cchMaxpsz1 にコピーする文字数であり、必ずしも psz1 のサイズ (バイト単位) ではないことに注意してください。 次のいずれかの代替手段を使用することを検討してください。 StringCbCatStringCbCatExStringCbCatNStringCbCatNExStringCchCatStringCchCatExStringCchCatNまたは StringCchCatNEx。 続行する前に 、「セキュリティに関する考慮事項: Microsoft Windows Shell 」を確認する必要があります。

注意

shlwapi.h ヘッダーは、STRNCat をエイリアスとして定義します。このエイリアスは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional、Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー shlwapi.h
Library Shlwapi.lib
[DLL] Shlwapi.dll (バージョン 4.71 以降)