#.net #visual-studio-2010 #file #embed
#.net #visual-studio-2010 #файл #Внедрить
Вопрос:
Мне нужно, чтобы файл, содержащий мои данные, был встроен в exe-файл, чтобы при вызове его пользователями он открывал файл, читал его, предпринимал действия и чтобы пользователи не видели этот файл или не имели к нему никакого доступа или не знали, что он существует. Как я могу это сделать? Программа для упаковки файлов, такая как Molebox, может это сделать, но будет стоить совсем немного. Можно ли сделать это с помощью VS2010? но мне это может понадобиться и на платформе Linux.
Комментарии:
1. Почему бы просто не поместить данные в исходный код?
Ответ №1:
Дважды щелкните свой узел свойств в проектах
Щелкните Ресурсы, затем щелкните ссылку, чтобы создать файл ресурсов
Нажмите «Добавить ресурс» и выберите «Добавить существующий файл». Это добавит файл к вашим ресурсам.
Файл добавляется как общедоступное статическое свойство класса ресурсов, к которому можно получить доступ по заданному ему имени. в примере я добавил XML-файл с именем «SampleConfiguration». Я могу получить к нему доступ в коде следующим образом:
var fileString = ActivityLibrary1.Properties.Resources.SampleConfiguration;
Где ActivityLibrary1
находится пространство имен сборки по умолчанию. Поскольку файл был текстовым файлом, он был добавлен как строковый ресурс. Если вы добавите двоичный файл, он будет добавлен в виде массива байтов. Как обращаться с файлами в байтовых массивах — это другой вопрос…
Комментарии:
1. И если кто-нибудь скажет вам использовать
Assembly.GetManifestResourceStream
, ударьте их прямо в лицо. Я хлопья.2. 1 для рисования круга от руки.