Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
 Аватар для jkrnd
179 / 69 / 13
Регистрация: 22.12.2015
Сообщений: 2,648

Как объявить параметр-указатель на строку в API функции для XE

17.09.2019, 15:59. Показов 1282. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Функция имеет параметр (аргумент):
C++
1
LPTSTR szProcessName
Для C++Builder6 делаем, например, так:
C++
1
Edit1->Text.c_str()
А для XE с её Unicode?
Вариант: "Строковая константа" не проходит:
C++
1
void FuncExample(L"Строковая константа");
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.09.2019, 15:59
Ответы с готовыми решениями:

Указатель как входной параметр функции
#include <iostream> const int Max = 5; int* fill_array(double ar, int limit); void show_array(const double ar, int* n) ; int*...

Нулевой указатель как параметр функции
Здравствуйте. Помогите, пожалуйста, разъяснить следующую ситуацию. Есть указатель, который пока что ни на что не указывает. Этот указатель...

Указатель на структуру, как параметр функции
Господа программисты! Прошу вашей помощи! Помогите передать функции в качестве аргумента указатель на структуру. Вот что есть: struct...

3
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33399 / 21509 / 8236
Регистрация: 22.10.2011
Сообщений: 36,907
Записей в блоге: 12
17.09.2019, 17:08
А в XE, если я не ошибаюсь, c_str() уже возвращает wchar_t*, как и нужно для юникодных строк, так что код не изменится... Жалко, что в новых версиях убили t_str()...
1
 Аватар для jkrnd
179 / 69 / 13
Регистрация: 22.12.2015
Сообщений: 2,648
17.09.2019, 18:51  [ТС]
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
bool IsProcRunning(LPTSTR szProcessName)     // #include <tlhelp32.h>
{
    HANDLE hSnapShot;
    PROCESSENTRY32 pe = {sizeof(pe)};
    hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);  // Получаем список запущенных процессов на Windows API
    if (hSnapShot == INVALID_HANDLE_VALUE)
        return false;
    if (!Process32First(hSnapShot, &pe))
        return false;
    do
        if(!lstrcmpi(pe.szExeFile,szProcessName))
        {
            CloseHandle(hSnapShot);
            return true;
        }
    while (Process32Next(hSnapShot, &pe));
    CloseHandle(hSnapShot);
    return false;
}
void __fastcall TFormMonitor::Button2Click(TObject *Sender)
{
    // Процесс с указанным именем запущен или нет
    String s = L"СПТ-клиент с архивами.exe";
    Label1->Caption = IntToStr(IsProcRunning(s.c_str()));
}
Ошибка в строке
C++
1
Label1->Caption = IntToStr(IsProcRunning(s.c_str()));
Добавлено через 9 минут
Вот так получилось, не доходит что я не так делал:
C++
1
2
    bool b = IsProcRunning(L"СПТ-клиент с архивами.exe");
    Label1->Caption = BoolToStr(b, true);
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33399 / 21509 / 8236
Регистрация: 22.10.2011
Сообщений: 36,907
Записей в блоге: 12
17.09.2019, 19:58
Лучший ответ Сообщение было отмечено jkrnd как решение

Решение

Цитата Сообщение от jkrnd Посмотреть сообщение
не доходит что я не так делал:
У IntToStr есть две перегрузки: первая принимает __int64, вторая - int. Каким образом компилятор в твоем случае должен выбрать одну из них? Сам он не может, ему надо подсказать:
C++
1
    Label1->Caption = IntToStr((int)IsProcRunning(s.c_str()));
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.09.2019, 19:58
Помогаю со студенческими работами здесь

Типизированный указатель как параметр функции
Читаю книгу, там такой пример: Procedure ChangeParam (P: ^Double) Begin P^ := 150; New(P); P^ := 320; Dispose(P); ...

Можно ли передать указатель на функцию как параметр другой функции?
В общем, вопрос. Можно ли, допустим ... int fun1(int x) { ... ... ... return x*1000; }

Объявить массив из N указателей на функции, возвращающих указатели на функции, возвращающие указатель на char
Задание: Объявить массив из N указателей на функции, возвращающих указатели на функции, возвращающие указатель на char. Можно...

Использовать указатель, как параметр для цикла FOR
Здравствуйте! Я не знаю, как использовать указатели в цикле FOR. Писал так: for i^ := 0 to 10 do , но компилятор ругается: For loop...

Как объявить указатель на массив?
Вернее, указатель на массив указателей на массив. Конструкция massiv: ^array of TMy1; не работает, скомпилировалась конструкция type ...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
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-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru