Я читал статью о переполнении стека по этой ссылке: Открыть связанное с файлом приложение, и у меня возникла еще одна проблема: мое приложение Windows Forms открывается, но я не вижу содержимого. Что мне сделать в своем приложении, чтобы обеспечить возможность открытия файла из проводника Windows? Пользователь перетаскивал файл в мой exe-файл winforms.
В приложении WinForms вам нужно будет получить аргументы командной строки из метода Environment.GetCommandLineArgs. Однако есть важное различие между вызовом этого метода и консольным приложением: первый элемент массива содержит имя файла исполняемой программы. Если имя файла недоступно, первый элемент равен String..::.Empty. Остальные элементы содержат любые дополнительные токены, введенные в командной строке. Я нашел этот код для хранения аргументов, но не знаю, какое событие на самом деле реализовать в моем приложении. В ветке MSDN нашел следующее.
[STAThread]
static void Main()
{
string[] args = Environment.GetCommandLineArgs();
if (args.Length > 1)
{
string filePath = args[1]; //First arg is the running process
if (File.Exists(filePath))
{
string name = Path.GetFileNameWithoutExtension(filePath);
File.Copy(filePath, name + ".dat");
//todo - delete input
}
}
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
Подробнее здесь: https://stackoverflow.com/questions/593 ... nt-listene
Пользователь перетаскивает файл в мой исполняемый файл winforms. Могу ли я создать прослушиватель событий? ⇐ C#
Место общения программистов C#
1728330434
Anonymous
Я читал статью о переполнении стека по этой ссылке: Открыть связанное с файлом приложение, и у меня возникла еще одна проблема: мое приложение Windows Forms открывается, но я не вижу содержимого. Что мне сделать в своем приложении, чтобы обеспечить возможность открытия файла из проводника Windows? Пользователь перетаскивал файл в мой exe-файл winforms.
В приложении WinForms вам нужно будет получить аргументы командной строки из метода Environment.GetCommandLineArgs. Однако есть важное различие между вызовом этого метода и консольным приложением: первый элемент массива содержит имя файла исполняемой программы. Если имя файла недоступно, первый элемент равен String..::.Empty. Остальные элементы содержат любые дополнительные токены, введенные в командной строке. Я нашел этот код для хранения аргументов, но не знаю, какое событие на самом деле реализовать в моем приложении. В ветке MSDN нашел следующее.
[STAThread]
static void Main()
{
string[] args = Environment.GetCommandLineArgs();
if (args.Length > 1)
{
string filePath = args[1]; //First arg is the running process
if (File.Exists(filePath))
{
string name = Path.GetFileNameWithoutExtension(filePath);
File.Copy(filePath, name + ".dat");
//todo - delete input
}
}
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
Подробнее здесь: [url]https://stackoverflow.com/questions/59348985/user-drags-file-onto-my-winforms-executable-file-do-i-create-some-event-listene[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия