|
C#, проблема с ресурсами |
☑ |
0
batmansoft
18.12.13
✎
11:50
|
Добрый день. Я добавил в проект визуал студии 201 ресурс и вот такой код:
class Program
{
static void Main(string[] args)
{
string[] resNames = Assembly.GetCallingAssembly().GetManifestResourceNames();
foreach (string name in resNames)
{
Console.WriteLine(name);
}
Console.WriteLine("****************");
Console.Read();
}
}
но он почему то ничего не выводит (ни одного имени ресурса). Подскажите плз, в чем может быть проблема)?
|
|
1
Jaap Vduul
18.12.13
✎
11:58
|
Может у тебя ресурсы в отдельной сборке?
|
|
2
batmansoft
18.12.13
✎
12:01
|
нет, в той же
|
|
3
Jaap Vduul
18.12.13
✎
12:06
|
И, кстати, непонятно:
>> ...ничего не выводит (ни одного имени ресурса)
Имена ресурсов и не должны выводиться, но должны выводиться имена внедрённых в сборку ресурсных файлов.
|
|
4
batmansoft
18.12.13
✎
12:09
|
(3) Да, это я и имел в виду. Имена внедренных в сборку ресурсных файлов. Не выводится ни одного.
|
|
5
Serginio1
18.12.13
✎
12:13
|
А почему ты считаешь, что они есть?
|
|
6
batmansoft
18.12.13
✎
12:18
|
(5) Потому что я их туда добавлял
|
|
7
Serginio1
18.12.13
✎
12:18
|
Reflector их видит?
|
|
8
Jaap Vduul
18.12.13
✎
12:30
|
Объявление Main() вот так измени:
[MethodImpl(MethodImplOptions.NoInlining)]
static void Main(string[] args)
|
|
9
batmansoft
18.12.13
✎
13:17
|
(8) не помогло.
А что, кстати, такое MethodImpl?
|
|
10
kot_bcc
18.12.13
✎
14:23
|
GetCallingAssembly() -> GetExecutingAssembly()
|
|
11
Serginio1
18.12.13
✎
15:10
|
Или typeof(Program).Assembly
|
|
12
batmansoft
18.12.13
✎
18:14
|
(10) спасибо, помогло
|
|
13
batmansoft
18.12.13
✎
19:10
|
Еще подскажите пожалуйста, как перебрать все ресурсы в ResourceSet?
|
|
14
kot_bcc
18.12.13
✎
19:36
|
for(IDictionaryEnumerator e = myResourceSet.GetEnumerator(); e.MoveNext(); )
{
Console.WriteLine("{0}: {1}", e.Key, e.Value);
}
|
|
15
batmansoft
18.12.13
✎
19:47
|
(14) спасибо
|
|