Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.11.2009, 12:15   #1
evgenrpo
Пользователь
 
Регистрация: 31.05.2009
Сообщений: 71
По умолчанию Как передать путь на файл в приложение?

Проблема такова. У виндовскому окну выбираю файл. Щолкаю по нему два раза.файл мп3 . запускается проигрователь(приложение) так называем. Как передать путь файла в приложение? С#
Мне надо запустить проигрование файла при нажатии кнопки мышки.

Последний раз редактировалось evgenrpo; 15.11.2009 в 12:34.
evgenrpo вне форума Ответить с цитированием
Старый 15.11.2009, 12:57   #2
Vitek-pm
Пользователь
 
Регистрация: 17.02.2009
Сообщений: 56
По умолчанию

Если в программе есть
Код:
int main(int argc, char *argv[])
, то в argv[1] будет хранится путь к файлу.
Чтобы все файлы открывались написанным приложением кликаем по файлу такого типа правой кнопкой мыши, выбираем открыть с помощью и т.д.
Vitek-pm вне форума Ответить с цитированием
Старый 15.11.2009, 13:05   #3
evgenrpo
Пользователь
 
Регистрация: 31.05.2009
Сообщений: 71
По умолчанию

Код:
public Form1()
        {
            InitializeComponent();  
        }
А если с формами. Куда писать код?
Код:
int main(int argc, char *argv[])
evgenrpo вне форума Ответить с цитированием
Старый 15.11.2009, 13:17   #4
Vitek-pm
Пользователь
 
Регистрация: 17.02.2009
Сообщений: 56
По умолчанию

Я сделал так. Файл Program.cs:
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main(string[] args)
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1(args[0]));
        }
    }
}
И изменил конструктор формы, файл Form1.cs:
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public string str;

        public Form1(string s)
        {
            str = s;
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            Text = str;
        }
    }
}
Теперь в str хранится путь к файлу. Если открыть файл приложением, то в заголовке формы напишется путь к файлу.

p.s. для того чтобы прога не крашилась, если она запускается просто так, а не открывает файл, можно написать:
Код:
            try
            {
                Application.Run(new Form1(args[0]));
            }
            catch
            {
                Application.Run(new Form1(""));
            }

Последний раз редактировалось Vitek-pm; 15.11.2009 в 13:23.
Vitek-pm вне форума Ответить с цитированием
Старый 15.11.2009, 13:44   #5
evgenrpo
Пользователь
 
Регистрация: 31.05.2009
Сообщений: 71
По умолчанию

Спасибо большое Vitek-pm.
evgenrpo вне форума Ответить с цитированием
Старый 20.11.2009, 23:08   #6
evgenrpo
Пользователь
 
Регистрация: 31.05.2009
Сообщений: 71
По умолчанию

как передать несколько путей в приложение? когда передаю несколько запускается несколько екземпляров приложения.

Последний раз редактировалось evgenrpo; 20.11.2009 в 23:17.
evgenrpo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как создать приложение извлекающее из себя исполняемый файл? dolphin705 Общие вопросы Delphi 1 08.05.2009 16:54
Путь по которому запещенно консольное приложение lokiz Общие вопросы Delphi 2 15.01.2009 21:41
Передать файл клиенту BlackOmen JavaScript, Ajax 7 26.06.2008 11:36
Как передать данные из SQL в файл _ozzy_ БД в Delphi 0 12.06.2008 16:50
Как передать POST data через запрос в веб-приложение Anticrim Java для Web (EE, Servlet, JSP, Tomcat, Spring MVC) 3 03.10.2007 18:19