|
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
|
|
Компиляция исходного кода в работающей программе07.07.2014, 16:21. Показов 4081. Ответов 47
Метки нет (Все метки)
Привет.
Подскажите, как можно скомпилировать код, и использовать полученный результат в запущенной программе, если этот самый код находится, в компоненте (memo, list итд - неважно) этой запущенной пргораммы. Я нашел 1 вариант - это сохранение этого кода в файл и компиляция в отдельном процессе. Это правильный вариант? и есть ли еще пути решения?
0
|
|
| 07.07.2014, 16:21 | |
|
Ответы с готовыми решениями:
47
Загрузка исходного кода и компиляция *.exe Компиляция исходного кода C++ ubuntu если нет компилятора g++ Исправить ошибку в программе, работающей с дробями |
|
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
|
|||||||
| 08.07.2014, 13:23 [ТС] | |||||||
0
|
|||||||
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
||||||
| 08.07.2014, 15:13 | ||||||
|
vlinx, жестоко ты с ним, зачем же ты его убил, он даже сделать ничего не успел. Это я про TerminateProcess.
Надо было как-то так:
1
|
||||||
|
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
|
||||||
| 08.07.2014, 16:38 [ТС] | ||||||
|
DrOffset, действительно) спасибо!
сейчас попробую сделать чтобы было все динамически. Добавлено через 47 минут Получилось следующее:
2) Разобьем и запишем эту строку на определение и объявление введенной в MEMO ф-ии 3) Компилим DLL 4) Загрузка DLL и вызов ф-ии Сейчас непойму, почему при компиляции dll выпадают ворнинги: extra tokens at #ifndef derective (example_dll.h) , то ли пробелы не нарвятся, то ли кодировка файла... в результате : function not found Добавлено через 5 минут и почему-то размер dll стал 471кб, а было 14
0
|
||||||
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
||||||||
| 08.07.2014, 16:54 | ||||||||
|
Должно быть как-то так:
1
|
||||||||
|
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
|
|
| 08.07.2014, 16:56 [ТС] | |
|
26! причем это день моего день рождения)) чисто случайно так совпало)))
супер. кстати, DrOffset, при формировании хедера, я нетуда внес определение функции. А какие определения тогда можно вносить в ту секцию?
0
|
|
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
|
| 08.07.2014, 16:58 | |
|
0
|
|
|
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
|
||||||||||||
| 08.07.2014, 17:02 [ТС] | ||||||||||||
Этот вариант не сработал
0
|
||||||||||||
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
|||
| 08.07.2014, 17:09 | |||
Сообщение было отмечено vlinx как решение
РешениеДобавлено через 5 минут
1
|
|||
|
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
|
|
| 08.07.2014, 17:14 [ТС] | |
|
Возвращаясь к 4 нашим вариантам..
Получается вариант 3 практически реализован. И у него 2 зависимости (в вызывающем коде): 1) Указатель на ф-ию (прототип) 2) Вызов ф-ии (тоже по прототипу нужно вызывать) тут, я думаю, можно опять делать парсинг input_memo_text и считать кол-во и типы параметров и рез-тат ф-ии. а ниже сделать некий switch по возможным вариантам... вообщем пудумаю еще. отпишусь
0
|
|
|
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
|
|
| 08.07.2014, 17:18 [ТС] | |
|
давненько уже гадал откуда же беруться всякие кракозябры типа _ZN9wikipedia7article8print_toERSo
0
|
|
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
||
| 08.07.2014, 17:19 | ||
0
|
||
|
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
|
||||||||||||||||||||||||||||||||
| 09.07.2014, 21:12 [ТС] | ||||||||||||||||||||||||||||||||
![]() я его реализую тоже, но сначала этот до конца доведу. Добавлено через 22 часа 21 минуту Реализация варианта 3 (создание процесса с генерацией dll по шаблону) получилась следующая: так как эта функция(возможность компиляции пользовательского кода) часть приложения, код в стиле ООП. cAlgorithmGen.h
cAlgorithmGen.cpp
Допустим в приложении(в моем) нет нужного генератора данных, и нужно задать свои правила генерации определенных значений. Например: -Сгенерировать 10 значений начиная с "0" с шагом 3, и вывести на экран\файл. Для этой цели использование класса будет следующим:
При такой реализации оснавная проблема - в зависимости шаблона прототипа функции в dll и прототипа вызова ф-ии в коде. Они должны совпадать. Здесь решил использовать только 1 шаблон:
За генерацию следующего конкретного значения на каждом цикле генератора отвечает метод
Добавлено через 5 часов 23 минуты оказывается LoadLibrary нужно передавать unicode-строку нужно заменить кусок на
0
|
||||||||||||||||||||||||||||||||
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
|||||||
| 09.07.2014, 21:17 | |||||||
|
Для указания wchar_t строковых литералов, используется префикс L.
0
|
|||||||
|
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
|
||||||||
| 09.07.2014, 22:08 [ТС] | ||||||||
Добавлено через 20 минут
0
|
||||||||
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
|||||||
| 09.07.2014, 22:25 | |||||||
|
vlinx, std::string типизирован типом char. А std::wstring - типом wchar_t. Это я и имел в виду под строками char
![]() Это тайпдефы.
![]()
1
|
|||||||
|
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
|
|||
| 09.07.2014, 22:32 [ТС] | |||
|
ясно, спасибо Добавлено через 1 минуту
0
|
|||
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
||
| 09.07.2014, 22:36 | ||
По той причине, что WinAPI нативно поддерживает wchar_t (UCS-2) (если не совру, то с версии NT), а ansi версии функций обеспечиваются через слой совместимости.
0
|
||
|
1 / 1 / 1
Регистрация: 27.06.2014
Сообщений: 74
|
||||||||||||||||
| 09.07.2014, 22:46 [ТС] | ||||||||||||||||
|
как то с wstring трудно работается.
как такую строку можно получить вообще?)
0
|
||||||||||||||||
|
19491 / 10097 / 2460
Регистрация: 30.01.2014
Сообщений: 17,805
|
|
| 09.07.2014, 22:48 | |
|
0
|
|
| 09.07.2014, 22:48 | |
|
Помогаю со студенческими работами здесь
40
Компиляция кода Freeglut Компиляция кода в приложении Компиляция кода в командной строке
Компиляция кода под конкретную ОС Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|