Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
Я Фоюмчанин ? дааааа)
 Аватар для ivan.-94
213 / 204 / 23
Регистрация: 02.06.2012
Сообщений: 1,424
Записей в блоге: 12

С++ Builder XE2 непойму в чём ошибка

25.07.2012, 09:20. Показов 1735. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток.
C++
1
2
3
4
5
6
7
const char *NamedMutex= "OneOnly";
HANDLE CheckInstance(const char *Name){
    HANDLE Mutex = CreateMutex(NULL, true,Name);
    int er = GetLastError();
    if (er) return 0;
    return Mutex;
}
C++
1
2
[BCC32 Error] FreeCheat.cpp(15): E2034 Cannot convert 'const char *' to 'const wchar_t*'
[BCC32 Error] FreeCheat.cpp(15): E2342 Type mismatch in parameter 'lpName' (wanted 'const wchar_t *', got 'const char *')
Что делать с этими wchar_t я никак и непонел этого в XE2
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.07.2012, 09:20
Ответы с готовыми решениями:

Непойму в чём ошибка
Друзья помогите немойму что за ошибка когда в программе заходишь в настройки и просто закрываешь форму на кнопку отмена выходит ошибка...

Ошибка в C++ Builder XE2 (Pulsar)
Скачал вот отсюда http://запрещенная ссылка Установил с образа который там был Установил кряк.. Лезут ошибки ...

C++Builder XE2: 51 ошибка, unable to open...
Доброго времени суток! Перешел недавно на версию XE2 и ... замучился! Иногда при компиляции проекта линковщик выдает всегда ровно одни и те...

5
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33398 / 21508 / 8236
Регистрация: 22.10.2011
Сообщений: 36,906
Записей в блоге: 12
25.07.2012, 10:05
Ошибка - в том, что по умолчанию XE2 подразумевает, что проект Юникодный (в опциях проекта TCHAR maps to = wchar_t). А, следовательно, подразумевает под CreateMutex не CreateMutexA, как в ранних версиях Билдера, а CreateMutexW. Естественно, параметры не совпадают. Передавай функции правильный параметр, а лучше - сделай код независимым от настроек Юникод/ANSI:

C++
1
2
3
4
5
6
7
8
9
10
#include <tchar.h>
 
TCHAR *NamedMutex = _T("OneOnly");
HANDLE CheckInstance(TCHAR *Name)
{
    HANDLE Mutex = CreateMutex(NULL, true, Name);
    int er = GetLastError();
    if (er) return 0;
    return Mutex;
}
2
Я Фоюмчанин ? дааааа)
 Аватар для ivan.-94
213 / 204 / 23
Регистрация: 02.06.2012
Сообщений: 1,424
Записей в блоге: 12
25.07.2012, 10:47  [ТС]
UI, Спосибо огромное всё работает.
Цитата Сообщение от UI Посмотреть сообщение
сделай код независимым от настроек Юникод/ANSI
А как ?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33398 / 21508 / 8236
Регистрация: 22.10.2011
Сообщений: 36,906
Записей в блоге: 12
25.07.2012, 10:56
Лучший ответ Сообщение было отмечено как решение

Решение

Я написал, как. Подключаешь tchar.h и вместо конкретного указания char или wchar_t, используешь TCHAR, это подставит правильный тип в зависимости от настроек проекта. Ну, и про макрос _T не забывай, оборачивай им все строковые литералы. Если проект ANSI - то все останется как было, если Unicode - то к литералу будет добавлен L слева, как и положено.
3
Я Фоюмчанин ? дааааа)
 Аватар для ivan.-94
213 / 204 / 23
Регистрация: 02.06.2012
Сообщений: 1,424
Записей в блоге: 12
25.07.2012, 11:35  [ТС]
А всё я врубился
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
26.07.2012, 10:04
Думаю лучше явно указывать CreateMutexA() либо сходу юзать юникод- то есть использовать wchar_t вместо char и строки задавать с L
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.07.2012, 10:04
Помогаю со студенческими работами здесь

История активности файла. (C++ Builder 6, C++ Builder XE2)
Здравствуйте. Пришла идея написать программу для выявления истории активности файла, например есть файл *.exe и нужно посмотреть какие...

дата почемуто постоянно обновляется! непойму в чём причина!
в таблице в бд mysql есть поле даты со свойством (timestamp) и оно почемуто обновляется всегда когда редактируется любое поле строки!!...

Книги по C++ Builder XE2
Здравствуйте. Скачал C++ Builder XE2, запустил и задался вопросом где бы книгу найти хорошую по C++ Builder XE2, например самоучитель или...

С++Builder XE2 + JSON
Принимаю json пакеты, до этого хитрил с регулярками или писал простенькие парсеры, но сейчас сложность пакетов возросла, да и левых...

Информация о железе Builder XE2
Доброго времени суток! Подскажите пожалуйста, как и какими средствами можно получить: марку процессора, видеокарты, материнки и т.д.? Среда...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru