powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Передать аргументы визуальной апликации.
20 сообщений из 20, страница 1 из 1
Передать аргументы визуальной апликации.
    #38099122
jenya7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я могу передать аргументы консольной апликации, вызывая ее :
Код: c#
1.
2.
3.
ProcessStartInfo info = new ProcessStartInfo(fileName);
info.Arguments = args;
Process process = Process.Start(info);



Вопрос могу я сделать то же самое для визуальной апликации? И если да то как апликация считывает аргументы?
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099130
beg-in-er
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jenya7,

что за аппликация? русский что ли не знаешь? application это приложение.
а аппликация, реально режет глаз. будто вчера со школьной скамьи
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099133
Lexxxxx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jenya7,

http://msdn.microsoft.com/ru-ru/library/acy3edy3(v=vs.90).aspx
Хотя попробовать было бы значительно проще.
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099150
jenya7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Оказывается что в визуальном приложении (раз beg-in-er настаивает) можно в мэйн передать стринг с аргументами:
Код: c#
1.
2.
3.
4.
5.
6.
7.
 [STAThread]
        static void Main([color=red]string[] args[/color])  //string[] args - added by me!!!
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }



Проблема что апл....приложение не видит args.
Код: c#
1.
2.
3.
4.
private void buttonTest_Click(object sender, EventArgs e)
{
       MessageBox.Show(args[0]);       // Error The name 'args' does not exist in the current context	
}
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099162
sphinx_mv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jenya7Оказывается что в визуальном приложении (раз beg-in-er настаивает) можно в мэйн передать стринг с аргументами:
Код: c#
1.
2.
3.
 [STAThread]
        static void Main([color=red]string[] args[/color])  //string[] args - added by me!!!
...

Проблема что апл....приложение не видит args.
Код: c#
1.
2.
3.
4.
private void buttonTest_Click(object sender, EventArgs e)
{
       MessageBox.Show(args[0]);       // Error The name 'args' does not exist in the current context	
}

Время жизни и область видимости для переменных и аргументов процедур и функций Вам в помощь...
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099175
Lexxxxx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jenya7,

Вы все таки прочтите то, что по моей ссылке написано. Там как раз в разделе про аргументы есть способ их получения в любом месте программы. Но про область видимости переменных знать необходимо!
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099184
jenya7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо, ссылку прочел, оказывается ларчик просто открывался
Код: c#
1.
string[] args = Environment.GetCommandLineArgs();
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099245
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jenya7спасибо, ссылку прочел, оказывается ларчик просто открывался
Код: c#
1.
string[] args = Environment.GetCommandLineArgs();



это да, а как же все-таки в первом случае решить проблему?
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099268
Lexxxxx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что такое первый случай?
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099316
jenya7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в первом случае можно так

Код: c#
1.
2.
3.
4.
5.
6.
7.
[STAThread]
        static void Main(string[] args) 
         {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1(args));
        }



и потом

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
public partial class Form1 : Form
    {
        public string arg1;

        public Form1(string[] args)
        {
            InitializeComponent();
            arg1 = args[1];
        }
.............................................
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099329
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jenya7,

так называемый первый способ (с параметрами в конструкторе) - предпочтительнее,
ибо не заботы формы знать откуда взялись параметры(может из конфиг файла или у сервиса какого запрошены или комбинация из разных источников)
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099343
jenya7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Изопропил спасибо за разъяснение, так действительно более "generic".
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099381
sphinx_mv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jenya7Изопропил спасибо за разъяснение, так действительно более "generic".Когда наткнетесь, что параметры приложения могут не соотвествовать ни количеству, ни порядку следованя и ни одному из предполагаемых значений - вот тогда и расскажете про "более generic"...
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099385
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphinx_mvjenya7Изопропил спасибо за разъяснение, так действительно более "generic".Когда наткнетесь, что параметры приложения могут не соотвествовать ни количеству, ни порядку следованя и ни одному из предполагаемых значений - вот тогда и расскажете про "более generic"...

никто не заставляет в конструктор формы передавать сырые параметры argv
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099390
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропил,

мозговзрывающая тема.
автор почитай о конструкторе класса
визуальная аппликация... новый термин в программировании.
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099398
sphinx_mv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилsphinx_mvпропущено...
Когда наткнетесь, что параметры приложения могут не соотвествовать ни количеству, ни порядку следованя и ни одному из предполагаемых значений - вот тогда и расскажете про "более generic"...

никто не заставляет в конструктор формы передавать сырые параметры argv
"Предпочтительность первого способа" (в котором, кстати, используются "сырые" параметры в конструкторе формы) - это не оно?
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099401
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphinx_mv,

всяко лучше чем из потрохов формы вытаскивать Environment.GetCommandLineArgs()
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099443
jenya7
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sphinx_mvjenya7Изопропил спасибо за разъяснение, так действительно более "generic".Когда наткнетесь, что параметры приложения могут не соотвествовать ни количеству, ни порядку следованя и ни одному из предполагаемых значений - вот тогда и расскажете про "более generic"...

А можно знать какие аргументы получает приложение? Может создать конфигурационный файл?
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38099590
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jenya7А можно знать какие аргументы получает приложение? Может создать конфигурационный файл?
Это вам лучше знать
...
Рейтинг: 0 / 0
Передать аргументы визуальной апликации.
    #38102787
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jenya7sphinx_mvпропущено...
Когда наткнетесь, что параметры приложения могут не соотвествовать ни количеству, ни порядку следованя и ни одному из предполагаемых значений - вот тогда и расскажете про "более generic"...

А можно знать какие аргументы получает приложение? Может создать конфигурационный файл?
разрешаю использовать конфигурационные файлы :)
Пространство имён Properties класс Settings (Properties.Settings)
Аргументы запуска приложения как тут уже писали
string[] args = Environment.GetCommandLineArgs();
их нужно передать в вызываемую форму, либо непосредственно в форме их получать конечно, но по моему это не правильный способ
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Передать аргументы визуальной апликации.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]