2016-11-24 25 views
0

Я пробовал искать решение, но не получилось. Может ли кто-нибудь указать мне в правильном направлении решения? Ссылка на CodeDOM: https://msdn.microsoft.com/en-us/library/y2k85ax6(v=vs.110).aspxДобавление ресурса в Codedom скомпилированный файл VB.NET

Я пытаюсь добавить ресурс использования:

Parameters.EmbeddedResources.Add(Directory.GetCurrentDirectory & "\HTML.txt") 
Parameters.EmbeddedResources.Add(Directory.GetCurrentDirectory & "\logo.png") 

Но я не могу получить к ним доступ из внешнего источника с помощью:

Dim content As String = My.Resources.HTML 
Dim logo As Image = My.Resources.logo 

Это ошибка:

'Resource' is not memeber of 'My'. 
'Resource' is not memeber of 'My'. 
+0

Возможный дубликат [Как исправить 'ресурсы' не является членом 'Мой'] (HTTP : //stackoverflow.com/questions/9299768/how-to-fix-the-resources-is-not-a-member-of-my) – NePh

+0

Я использую Codedom для компиляции файла. Ссылка: https://msdn.microsoft.com/en-us/library/y2k85ax6(v=vs.110).aspx – user41992

+1

Попробуйте: '(ваше пространство имен здесь) .Properties.Resources. (Resource here)' или используйте [** Класс ResourceManager **] (https://msdn.microsoft.com/en-us/library/system.resources.resourcemanager (v = vs.110) .aspx). –

ответ

0

Вот как я решил проблему:

Compiler.vb:

Using rw As New ResourceWriter(".\Library.resources") 
    rw.AddResource("HTML.txt", My.Resources.HTML) 
    rw.Generate() 
    rw.Close() 
End Using 
Parameters.EmbeddedResources.Add(".\Library.resources") 

source.txt:

Dim rm As New ResourceManager("Library", GetType(NameSpace).Assembly) 
Dim SomeString As String = rm.GetString("HTML.txt") 
+0

Это не сработало для меня, в моем случае ресурсы не являются текстовым файлом, они являются файлом 'dll', и мне нужно создать их с помощью функции:' File.WriteAllBytes() '...., do у вас есть идея? –