Перенесите файлы в один исполняемый [закрытый] пакет

Я пробовал это раньше для одного из интервью, а также думаю, что вы тоже :). Тем не менее, очень простой способ сделать это просто пройти шаг за шагом кода.

let initialString = "atttbcdddd"
var previousChar: Character = " "
var output = ""
var i = 1 // Used to count the repeated charaters
var counter = 0 // To check the last character has been reached

//Going through each character
for char in initialString {

    //Increase the characters counter to check the last element has been reached. If it is, add the character to output.
    counter += 1
    if previousChar == char { i += 1 }
    else {
        output = output + (i == 1 ? "\(previousChar)" : "\(previousChar)\(i)")
        i = 1
    }
    if initialString.count == counter {
        output = output + (i == 1 ? "\(previousChar)" : "\(previousChar)\(i)")
    }
    previousChar = char
}
let finalOutput = output.trimmingCharacters(in: .whitespacesAndNewlines)
print(finalOutput)
6
задан Bhargav Rao 26 April 2019 в 08:50
поделиться

4 ответа

Есть ли причина, по которой вы не можете использовать встроенные ресурсы для своего XML / файлы изображений?

2
ответ дан 17 December 2019 в 18:19
поделиться

Вы можете прикрепить все, что хотите, к концу исполняемого файла. Раньше я прикреплял свои файлы, а затем вставлял int, говорящий, как долго была моя полезная нагрузка, чтобы (psuedo):

payload.size = readInteger(exe.size - sizeof(int))
payload.offset = exe.size - sizeof(int) - payload.size
1
ответ дан 17 December 2019 в 18:19
поделиться

Вам могут потребоваться три подхода: если вам нужно объединить только изображения / аудио и другие неисполняемые файлы (без DLL, без OCX и т. Д.), Вы можете найти информацию на ресурсе файлы ; вы не ограничены типами, перечисленными в связанной статье, но для них есть специальные помощники. Otherwise - if you want to bundle executable files as well or prefer a more straightforward solution - you may consider using thinstall or molebox

0
ответ дан 17 December 2019 в 18:19
поделиться

Конечно, это возможно. Язык Tcl может быть объединен в виде «звездного пакета», который представляет собой исполняемый файл со встроенной виртуальной файловой системой. В эту файловую систему вы можете встраивать xml, изображения, звуки, скрипты и т. Д. Tcl'ers уже много лет занимаются развертыванием одного файла.

0
ответ дан 17 December 2019 в 18:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: