Проблема с созданием файла !

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by 043nKRuT0y, 24 Nov 2009.

  1. 043nKRuT0y

    043nKRuT0y Elder - Старейшина

    Joined:
    31 Oct 2007
    Messages:
    226
    Likes Received:
    8
    Reputations:
    0
    Подскажите как исправить такую ошибку :
    Создаю я значить файл
    Code:
    hDevice = CreateFile("\\\\.\\kimul25",GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,0,NULL);
    А VisualStudio мне ошибку :
    Code:
    Ошибка	2	error C2664: CreateFileW: невозможно преобразовать параметр 1 из 'const char [10]' в 'LPCWSTR'	
    Как собственно указать имя файла !?
     
  2. razb

    razb Active Member

    Joined:
    24 Mar 2009
    Messages:
    658
    Likes Received:
    133
    Reputations:
    18
    Либо отключи юникод либо используй wchar
     
  3. 043nKRuT0y

    043nKRuT0y Elder - Старейшина

    Joined:
    31 Oct 2007
    Messages:
    226
    Likes Received:
    8
    Reputations:
    0
    Можно подробней про оба метода ?
     
  4. csrss

    csrss Member

    Joined:
    13 Apr 2009
    Messages:
    38
    Likes Received:
    38
    Reputations:
    4
    wchar:
    hDevice = CreateFileW(L"\\\\.\\kimul25",GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,0, NULL);

    уникод отклучаеш в настройках Visual Studio:
    Project -> properties
     
    1 person likes this.
  5. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    Пиши явные имена API функций
    CreateFile - это макрос который в зависимости от настроек ссылается на
    CreateFileA или CreateFileW
    Первый для ANSI строк второй для WideChar
    Если юзаеш WideChar то перед строкой ставь символ L типа
    CreateFileW(L"filename", .......);
     
    2 people like this.
  6. altblitz

    altblitz Elder - Старейшина

    Joined:
    5 Jun 2009
    Messages:
    3,694
    Likes Received:
    3,149
    Reputations:
    236
    это не ошибка. это свойство богохульственной VisualStudio.

    правильным парням - знаком правильный GCC.
    и таких ошибок не возникает.
     
  7. 043nKRuT0y

    043nKRuT0y Elder - Старейшина

    Joined:
    31 Oct 2007
    Messages:
    226
    Likes Received:
    8
    Reputations:
    0
    всем спс - разобрался , хотя насчет Visual Studio ты прав - что то она перегибает в "некоторых местах" - в одной папке проекта столько файлов что не пойму на**я они нужны ......
     
  8. Ins3t

    Ins3t Харьковчанин

    Joined:
    18 Jul 2009
    Messages:
    939
    Likes Received:
    429
    Reputations:
    139
    В начале кода напиши #undef UNICODE
     
  9. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    Это пройдет с опытом ;)