Re: Как получить Assembly
От: Lloyd Россия  
Дата: 06.11.03 13:04
Оценка: -1
Здравствуйте, HexenMaster, Вы писали:

HM>Assembly нужен для инициализации статических ResourceManager.

HM>Сейчас сделано так:
HM>
HM>class Res
HM>{
HM>    struct tmpType{}
HM>    static tmpType tmp;
HM>    static Assembly assembly = tmp.GetType().Assembly;
HM>    static ResourceManager resTmp = new ResourceManager("ResTmpName", assembly);
HM>}
HM>

HM>Можно ли это сделать без временной структуры?


static ResourceManager resTmp = new ResourceManager("ResTmpName", MethodBase.GetCurrentMethod().DeclaringType.Assembly);
Как получить Assembly
От: HexenMaster  
Дата: 06.11.03 12:50
Оценка:
Assembly нужен для инициализации статических ResourceManager.
Сейчас сделано так:
class Res
{
    struct tmpType{}
    static tmpType tmp;
    static Assembly assembly = tmp.GetType().Assembly;
    static ResourceManager resTmp = new ResourceManager("ResTmpName", assembly);
}

Можно ли это сделать без временной структуры?
... << RSDN@Home 1.1 beta 2 >>
Re: Как получить Assembly
От: orangy Россия
Дата: 06.11.03 13:49
Оценка:
Здравствуйте, HexenMaster, Вы писали:

HM>Assembly нужен для инициализации статических ResourceManager.

HM>Можно ли это сделать без временной структуры?
Конечно, см.статические методы класса Assembly, тебе наверное подойдёт GetExecutingAssembly()
[RSDN@Home 1.1.0 stable] Сейчас 19:47, слушаю 01-Strange Days
"Develop with pleasure!"
Re[2]: Как получить Assembly
От: HexenMaster  
Дата: 06.11.03 13:50
Оценка:
Здравствуйте, Lloyd, Вы писали:
L>
L>static ResourceManager resTmp = new ResourceManager("ResTmpName", MethodBase.GetCurrentMethod().DeclaringType.Assembly);
L>

^^^^^^^^^ возвращает Assembly mscorlib.dll!
... << RSDN@Home 1.1 beta 2 >>
Re[2]: Как получить Assembly
От: HexenMaster  
Дата: 06.11.03 14:01
Оценка:
Здравствуйте, orangy, Вы писали:

O>Здравствуйте, HexenMaster, Вы писали:


HM>>Assembly нужен для инициализации статических ResourceManager.

HM>>Можно ли это сделать без временной структуры?
O>Конечно, см.статические методы класса Assembly, тебе наверное подойдёт GetExecutingAssembly()
Ресурс расположен не в той сборке, которая вызвана на выполнение.
Вопрос скорее всего сформулирован некорректно. Попробую исправиться.

Есть отдельная сборка с ресурсами, для доступа к которым она экспортирует класс. Все методы\переменные в классе статические.
Нужно инициализировать ResourceManager.
... << RSDN@Home 1.1 beta 2 >>
Re: Как получить Assembly
От: VladD2 Российская Империя www.nemerle.org
Дата: 06.11.03 14:04
Оценка:
Здравствуйте, HexenMaster, Вы писали:

HM>Можно ли это сделать без временной структуры?


Если нужно получить сборку в которой находится код исполняемый в данный момент, то Assembly.GetExecutingAssembly .
... << RSDN@Home 1.1 beta 2 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Как получить Assembly
От: orangy Россия
Дата: 06.11.03 14:23
Оценка:
Здравствуйте, HexenMaster, Вы писали:

HM>Есть отдельная сборка с ресурсами, для доступа к которым она экспортирует класс. Все методы\переменные в классе статические.

Что значит "для доступа к ресурсам"? Ну вобщем, если у тебя там есть известный тебе тип, то тогда можно так:
    Assembly assembly = typeof(KnownType).Assembly;
[RSDN@Home 1.1.0 stable] Сейчас 20:21, слушаю 01-Strange Days
"Develop with pleasure!"
Re[3]: Как получить Assembly
От: Lloyd Россия  
Дата: 06.11.03 14:32
Оценка:
Здравствуйте, HexenMaster, Вы писали:

HM>^^^^^^^^^ возвращает Assembly mscorlib.dll!


Ты что-то не так делаешь.


using System;
using System.Reflection;

namespace ConsoleApplication9
{
    /// <summary>
    /// Summary description for Class1.
    /// </summary>
    class Class1
    {
        private static Assembly asm = MethodBase.GetCurrentMethod().DeclaringType.Assembly;
        [STAThread]
        static void Main(string[] args)
        {
            Console.WriteLine(asm.FullName);
            Console.ReadLine();
        }
    }
}


Выводит
ConsoleApplication9, Version=1.0.1405.30892, Culture=neutral, PublicKeyToken=null
Re[4]: Как получить Assembly
От: HexenMaster  
Дата: 06.11.03 14:41
Оценка:
Здравствуйте, orangy, Вы писали:
O>Что значит "для доступа к ресурсам"?
Вобщем-то излишняя информация — в данном случае.

O>
O>    Assembly assembly = typeof(KnownType).Assembly;
O>


Этот вариант заработал:
class Res
{
    static Assembly assembly = typeof(Res).Assembly;
    static ResourceManager res = new ResourceManager("resName", assembly);
}

Спасибо.
... << RSDN@Home 1.1 beta 2 >>
Re[4]: Как получить Assembly
От: HexenMaster  
Дата: 06.11.03 15:03
Оценка:
Здравствуйте, Lloyd, Вы писали:
L>Ты что-то не так делаешь.
Я просто в самом начале не добавил, что ресурс и класс — не в той сборке, которая выполняется (по всей видимости трабл именно в этом)

Все завершилось на варианте:
class Res
{
    static Assembly assembly = typeof(Res).Assembly;
    static ResourceManager res = new ResourceManager("resName", assembly);
}

Спасибо.
... << RSDN@Home 1.1 beta 2 >>
Re[5]: Как получить Assembly
От: Lloyd Россия  
Дата: 06.11.03 15:10
Оценка:
Здравствуйте, HexenMaster, Вы писали:

HM>Я просто в самом начале не добавил, что ресурс и класс — не в той сборке, которая выполняется (по всей видимости трабл именно в этом)


Это не важно:

проект ClassLibrary5:
using System;
using System.Reflection;

namespace ClassLibrary5
{
    /// <summary>
    /// Summary description for Class1.
    /// </summary>
    public class Class1
    {
        public static Assembly asm = MethodBase.GetCurrentMethod().DeclaringType.Assembly;
    }
}


проект ConsoleApplication9
using System;
using System.Reflection;

namespace ConsoleApplication9
{
    /// <summary>
    /// Summary description for Class1.
    /// </summary>
    class Class1
    {
        [STAThread]
        static void Main(string[] args)
        {
            Console.WriteLine(ClassLibrary5.Class1.asm.FullName);
            Console.ReadLine();
        }
    }
}


Выводит

ClassLibrary5, Version=1.0.1405.32595, Culture=neutral, PublicKeyToken=null

Re: Как получить Assembly
От: Spark2K Россия  
Дата: 06.11.03 16:42
Оценка:
Здравствуйте, HexenMaster, Вы писали:

HM>Assembly нужен для инициализации статических ResourceManager.

HM>Сейчас сделано так:
HM>
HM>class Res
HM>{
HM>    struct tmpType{}
HM>    static tmpType tmp;
HM>    static Assembly assembly = tmp.GetType().Assembly;
HM>    static ResourceManager resTmp = new ResourceManager("ResTmpName", assembly);
HM>}
HM>

HM>Можно ли это сделать без временной структуры?


class Res
{
    static ResourceManager _rm = new ResourceManager(typeof(Res));
}
Re: Как получить Assembly
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 06.11.03 18:04
Оценка:
Здравствуйте, HexenMaster, Вы писали:

HM>Assembly нужен для инициализации статических ResourceManager.


Assembly.GetExecutingAssembly
typeof (res).Assembly
... << RSDN@Home 1.1.0 stable (np: тихо) >>
AVK Blog
Re: Как получить Assembly
От: V.Petrovski Беларусь  
Дата: 10.11.03 07:23
Оценка:
Здравствуйте, HexenMaster, Вы писали:

HM>Assembly нужен для инициализации статических ResourceManager.

HM>Сейчас сделано так:
HM>
HM>class Res
HM>{
HM>    struct tmpType{}
HM>    static tmpType tmp;
HM>    static Assembly assembly = tmp.GetType().Assembly;
HM>    static ResourceManager resTmp = new ResourceManager("ResTmpName", assembly);
HM>}
HM>

HM>Можно ли это сделать без временной структуры?

ResourceManager resTmp = new ResourceManager("DevExpress.XtraEditors.StringsRes", this.GetType().Module.Assembly);


Если тебе будет интересно, то глянь сюда
Автор: V.Petrovski
Дата: 15.07.03
.
... << RSDN@Home 1.1 beta 2 Бутусов — На войне как на войне>>
Re: Как получить Assembly
От: V.Petrovski Беларусь  
Дата: 10.11.03 07:33
Оценка:
Здравствуйте, HexenMaster, Вы писали:

HM>Assembly нужен для инициализации статических ResourceManager.

HM>Сейчас сделано так:
HM>
HM>class Res
HM>{
HM>    struct tmpType{}
HM>    static tmpType tmp;
HM>    static Assembly assembly = tmp.GetType().Assembly;
HM>    static ResourceManager resTmp = new ResourceManager("ResTmpName", assembly);
HM>}
HM>

HM>Можно ли это сделать без временной структуры?

Посмотри тут
Автор: V.Petrovski
Дата: 15.07.03
.
... << RSDN@Home 1.1 beta 2 Бутусов — На войне как на войне>>
Re[3]: Как получить Assembly
От: mihailik Украина  
Дата: 14.11.03 17:25
Оценка:
HM>Есть отдельная сборка с ресурсами, для доступа к которым она экспортирует класс. Все методы\переменные в классе статические.
HM>Нужно инициализировать ResourceManager.

Используй typeof( эскпортированный-класс )
... << RSDN@Home 1.1.0 stable >>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.