c++builder > E2342(41): E2034 'char *'型は'const wchart_t*'型に変換できない > 41行目でなく40行目の問題だった


動作確認
C++ Builder XE4
Unit1.cpp
void __fastcall TForm1::AccessPrivilege( char *Prvlg, String ServerName, bool Mode ) throw(Exception)
{
    HANDLE htoken;
    TOKEN_PRIVILEGES  tknPrvlgs;

    bool success = OpenProcessToken( GetCurrentProcess(),
                             TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &htoken );
    if( !success ){
        throw Exception(ErrOpenProcess);
    }

    success = LookupPrivilegeValue( ServerName.c_str(),
    Prvlg,
    &(tknPrvlgs.Privileges[0].Luid) );
...

上記をコンパイルしようとして以下のエラーが出ていた。

E2342(41): E2034 'char *'型は'const wchart_t*'型に変換できない 

41行目というのは&(tknPrvlgs.Privileges[0].Luid) );の行。

しかしながら、問題は41行目でなく40行目のPrvlg,の方だった。
Prvlgがchar *型だったのでダメだった。

エラーメッセージがmisleadingだ。