Этот вопрос закрыт для ответов, так как повторяет вопрос Передача переменной в exe файл при его скачивании?
@whynot1337

Как передать данные в exe файл на C# при загрузке?

Здравствуйте.
Уже видел подобный вопрос на этом форуме, но так и не понял как решить такую проблему.
Вся суть в том, что пользователь должен авторизироваться на сайте и скачать файл main.exe, который он сможет открыть и увидеть "ваш логин: (логин пользователя)". Как я понял, можно обойтись без компиляции .cs файла.
Как можно передать логин пользователя PHP скриптом в exe файл?
Спасибо.
  • Вопрос задан
  • 167 просмотров
Ответы на вопрос 2
AshBlade
@AshBlade Куратор тега C#
Просто хочу быть счастливым
1. Передавать имя пользователя в аргументах к программе, но тогда нужно уметь правильно запускать. Т.е. нужен установщик, который ярлык правильно настроит
2. Отправлять вместе с программой файл конфигурации, из которого нужно читать имя пользователя.
3. Скомпилировать с уже встроенным именем.

Для последнего пункта можно сделать оптимизацию - весь проект (с логикой) хранить уже скопилированными, а при поступлении запроса компилировать exe. В него положить имя пользователя и просто скопировать готовые dll, а сам он просто будет прослойкой для самой программы.

Также появилась идея о каком-нибудь шаблонном движке (по типу razor), который в потоковой обработке будет отправлять байты программы и в нужном месте подставит строку имени, но не знаю существует такое решение или нет (скорее нет)
Ответ написан
VoidVolker
@VoidVolker Куратор тега C#
Dark side eye. А у нас печеньки! А у вас?
Проще всего просто дописать строку в конец самого exe файла, а в последнем байте - её длину. И при запуске приложения прочитать последний байт exe и далее вычислив начало и конец строки прочитать конец файла как строку. Чуть более сложный вариант в случае если надо пересобирать дистрибутив или добавить в него параметры какие-то: NSIS отлично работает под линуксом - так что можно ему передавать любые свои аргументы и делать сборку дистрибутива на лету.
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽