Запуск файла из "сборки" с атрибутами
-
- Posts: 6
- Joined: Sun Jul 05, 2020 8:48 am
Запуск файла из "сборки" с атрибутами
Здравствуйте. Возник вопрос. Может ли пользователь сделать привязку запуска исполняемого файла с атрибутами файла из архива? Каким образом это решается?
Ну к примеру мне в моём проекте понадобится выполнить "split" двух файлов, исполняемого и БД. Запускается исполняемый файл по ярлыку, в котором комментарием к наименованию исполняемого файла является наименование добавленного файла.
Executable.exe achive_file.bin
http://www.vmpsoft.com/forum/download/f ... iew&id=589
http://www.vmpsoft.com/forum/download/f ... iew&id=588
Если такая функция реализуема, то продукт будет весьма интересен для этого проекта.
Ну к примеру мне в моём проекте понадобится выполнить "split" двух файлов, исполняемого и БД. Запускается исполняемый файл по ярлыку, в котором комментарием к наименованию исполняемого файла является наименование добавленного файла.
Executable.exe achive_file.bin
http://www.vmpsoft.com/forum/download/f ... iew&id=589
http://www.vmpsoft.com/forum/download/f ... iew&id=588
Если такая функция реализуема, то продукт будет весьма интересен для этого проекта.
- Attachments
-
- Screenshot_130.png (14.08 KiB) Viewed 6293 times
-
- Screenshot_129.png (2.99 KiB) Viewed 6293 times
Re: Запуск файла из "сборки" с атрибутами
Про какой архив идет речь?Возник вопрос. Может ли пользователь сделать привязку запуска исполняемого файла с атрибутами файла из архива?
-
- Posts: 6
- Joined: Sun Jul 05, 2020 8:48 am
Re: Запуск файла из "сборки" с атрибутами
Прошу прощения, возможно неверно выразился. Ждал несколько дней ответ и уже не рассчитывал его получить.Admin wrote: Про какой архив идет речь?
Под архивом я имел в виду скомпилированный файл с защитой.
Меня интересует возможность добавления к примеру двух файлов в архив, исполняемого и файла данных, при том, что после компиляции исполняемый файл должен запускаться с атрибутом имени и расширения файла данных.
К примеру Chess.exe и board.bin.
В результате компиляции необходимо получить исполняемый файл, который помимо содержания защиты, при запуске будет "запускать" файл Chess.exe с атрибутом board.bin.
Т.е. условие компиляции с определённым атрибутом.
Для обычного запуска собранного проекта можно дописать атрибут в окне "Параметры", но это для проверки. А необходимо, чтобы на выходе (после компиляции) получался самостоятельный файл.
К сведению. Сам файл Chess.exe без атрибутированного файла board.bin не выполняется. Только в связке.
Спасибо.
- Attachments
-
- Screenshot_234.png (13.15 KiB) Viewed 6183 times
Re: Запуск файла из "сборки" с атрибутами
При наличии исходников "головного" EXE реализуется достаточно просто. Насколько я понимаю EXE анализирует параметры командной строки на старте. Достаточно предусмотреть вариант "параметр по умолчанию", чтобы менять его в момент обработки VMProtect-ом.
Например:
Далее с помощью скрипта в VMProtect меняете "%DEFAULT_FILE_NAME%" на нужное значение:
Например:
Code: Select all
#include "VMProtectSDK.h"
int main(int argc, char_t *argv[])
{
std::string file_name;
if (argc > 1)
file_name = argv[1];
else
file_name = VMProtectDecryptStringA("%DEFAULT_FILE_NAME%");
printf("File name = %s\n", file_name.c_str());
}
Code: Select all
function OnBeforeCompilation()
local functions = vmprotect.core():outputArchitecture():functions()
local string_function = functions:itemByName("string \"%DEFAULT_FILE_NAME%\"")
if string then
string_function:item(1):setDump("board.bin" .. string.char(0))
else
error("string_function not found")
end
end
-
- Posts: 6
- Joined: Sun Jul 05, 2020 8:48 am
Re: Запуск файла из "сборки" с атрибутами
Нет, как раз исходников нет, иначе действительно было бы всё намного проще.Admin wrote:При наличии исходников "головного" EXE реализуется достаточно просто.
Совершенно точно. Без параметров КС никак.Admin wrote:Насколько я понимаю EXE анализирует параметры командной строки на старте.
Этот вариант можно предусмотреть при наличии исходников?Admin wrote:Достаточно предусмотреть вариант "параметр по умолчанию", чтобы менять его в момент обработки VMProtect-ом.
Подскажите пожалуйста, есть ли у меня возможность обойтись малой кровью и вставить к примеру в
проект один скрипт перед компиляцией или ещё какой-нибудь вариант?
Вообще запутался с этими двумя полями кода. Можно пожалуйста поподробнее? Большое спасибо за оперативность.
Re: Запуск файла из "сборки" с атрибутами
А куда они делись, если не секрет? )Нет, как раз исходников нет, иначе действительно было бы всё намного проще.
Я про них и писал.Этот вариант можно предусмотреть при наличии исходников?
Прошу обратить особое внимание на то, что лицензия на наше программное обеспечение не предусматривает использование, при котором ущемляются права третьих лиц (например если вы не являетесь автором "головного" EXE и используете его нелегально). Поэтому такие вопросы на форуме по "защите ПО" выглядят несколько странно.Подскажите пожалуйста, есть ли у меня возможность обойтись малой кровью и вставить к примеру в
проект один скрипт перед компиляцией или ещё какой-нибудь вариант?
Первый кусок - это пример реализации "головного" EXE, второй - скрипт для VMProtect, который может менять "шаблон" внутри EXE на нужное значение (в данном случае на "board.bin").Вообще запутался с этими двумя полями кода. Можно пожалуйста поподробнее?
-
- Posts: 6
- Joined: Sun Jul 05, 2020 8:48 am
Re: Запуск файла из "сборки" с атрибутами
Так там свободно распространяемое ПО. Я не разработчик исполняемого файла ) Только board.binAdmin wrote:А куда они делись, если не секрет? ).
Тогда это не мой вариантAdmin wrote:Я про них и писал.
Так это не только лицензия на ваше ПО не предусматривает, а законодательство страны (если это конечно не Китай) [/quote]Admin wrote:Прошу обратить особое внимание на то, что лицензия на наше программное обеспечение не предусматривает использование, при котором ущемляются права третьих лиц (например если вы не являетесь автором "головного" EXE и используете его нелегально). Поэтому такие вопросы на форуме по "защите ПО" выглядят несколько странно.
Тут всё абсолютно легально, да и обсуждать это публично в данной ветке я думаю не стоит, вне зависимости от способа применения ПО.
Большое спасибо за подробное пояснение. Сейчас более менее понял какая часть кода к чему относится. Я это и предполагал, но уверенности не было.Admin wrote:Первый кусок - это пример реализации "головного" EXE, второй - скрипт для VMProtect, который может менять "шаблон" внутри EXE на нужное значение (в данном случае на "board.bin").
А что по поводу моего вопроса? Если я могу дописать в параметрах board.bin, то как я могу записать аналогичную функцию в качестве скрипта для компиляции файла с защитой, который будет при запуске также обрабатывать подтяжку бинарника к исполняемому файлу?
Благодарю за ответ.
P.S. Возможно ли это и если да, то как это реализовать? Я просто пытался, пробовал, тыкался, перечитал мануал (но там очень сжато, а про это вообще нет), попробовал Файлы--Действие.........но там видимо не те действия, которые мне нужны.
-
- Posts: 6
- Joined: Sun Jul 05, 2020 8:48 am
Re: Запуск файла из "сборки" с атрибутами
Мне тоже будет интересно узнать, существует ли такая возможность, но шансы на надежду уменьшаются в связи с тем, что уважаемый гуру начал не с самых простых способов, а с перекраивания исходников исполняемого файла. Это уже удручает. Удивительно, почему такая функция не предусмотрена в самом обработчике, ведь это прекрасно умеет делать любой архиватор (запускать то, что ему засунули внутрь с параметрами)
Ну может быть ещё рано расстраиваться. В противном случае для меня ПО просто потеряет смысл в случае, если нельзя заскриптовать или иным способом реализовать запуск "обработанного" исполняемого файла по определённом протоколу запуска.
Ну может быть ещё рано расстраиваться. В противном случае для меня ПО просто потеряет смысл в случае, если нельзя заскриптовать или иным способом реализовать запуск "обработанного" исполняемого файла по определённом протоколу запуска.
Re: Запуск файла из "сборки" с атрибутами
Господа, скрипт работает только на этапе компиляции в VMProtect, он для это и был сделан.Поправьте меня если я не прав, но я не думаю что это возможно сделать скриптом.
Обратите внимание, что наш продукт предназначен для разработчиков программного обеспечения, и, как правило, у разработчиков есть исходники того, что они пытаются защитить с помощью нашего инструмента. К слову сказать "перекраивание исходников" был как раз самым простым способом. Из более сложных способов (если исходников программы нет) - на этапе компиляции в VMProtect можно "пропатчить" код EXE, который работает с командной строкой и подсунуть туда нужные данные, но для этого нужно иметь минимальный опыт в реверсинге. В принципе мы можем помочь с реализацией скрипта под конкретный EXE.Мне тоже будет интересно узнать, существует ли такая возможность, но шансы на надежду уменьшаются в связи с тем, что уважаемый гуру начал не с самых простых способов, а с перекраивания исходников исполняемого файла.
Дак возьмите "любой архиватор" если он решает все ваши задачи. Наш продукт сделан совершенно для других целей.Удивительно, почему такая функция не предусмотрена в самом обработчике, ведь это прекрасно умеет делать любой архиватор (запускать то, что ему засунули внутрь с параметрами)
-
- Posts: 6
- Joined: Sun Jul 05, 2020 8:48 am
Re: Запуск файла из "сборки" с атрибутами
Так это никто и не оспаривает. Мы ведём речь только о внесении скрипта (если таковой внести возможно) именно на этапе компиляцииAdmin wrote:Господа, скрипт работает только на этапе компиляции в VMProtect, он для это и был сделан.
Так я и беру, но я хочу уйти от выполнения двойной работы. Разве вам это не видно? Кроме того конечный пользователь может легко растребушить архив, а скомпилированный VMProtect файл уже будет делом посложнее.Admin wrote:Дак возьмите "любой архиватор" если он решает все ваши задачи. Наш продукт сделан совершенно для других целей.
Проще всего будет сказать, возможно ли написать такой скрипт, с которым исполняемый файл будет скомпилирован с вышеуказанными параметрами? Ну вы же для чего-то сделали окно параметров и дали возможность туда писать "хвосты"? Я сейчас полагаю (возможно даже наивно), что внесение такого функционала в скрипт яйца выеденного не стоит. Для работоспособности требуемого функционала не требуется в обязательном порядке иметь исходники или реверсить файл, проверяя и фикся его структуру с кодом.Admin wrote:Из более сложных способов (если исходников программы нет) - на этапе компиляции в VMProtect можно "пропатчить" код EXE, который работает с командной строкой и подсунуть туда нужные данные, но для этого нужно иметь минимальный опыт в реверсинге. В принципе мы можем помочь с реализацией скрипта под конкретный EXE.
Скрипт должен выполнять запуск с атрибутами. Всё просто (вроде как).
Re: Запуск файла из "сборки" с атрибутами
При желании можно написать вообще все.Проще всего будет сказать, возможно ли написать такой скрипт, с которым исполняемый файл будет скомпилирован с вышеуказанными параметрами?
Это параметры для тестирования защищенной программы.Ну вы же для чего-то сделали окно параметров и дали возможность туда писать "хвосты"?