none
С# .exe file name RRS feed

  • Вопрос

  • Добрый день,

    пожскажите пожайлуста. Есть простенький проект на С#. когда я запускаю уже скомпилированый exe все работает отлично. но стоит мне его переименовать (определенным образом)  как по нажатию на "Button" запускаеться копия программы. подозреваю что это происходит из-за совпадения имени исполняемого файла и "namespace" | "classname" | "new process.filemane". как можно это отследить исправить избежать в будущем?

    11 апреля 2017 г. 6:29

Ответы

  • Все логично.

    Для запуска нового процесса указано только имя файла "getmac" (без пути). Поиск файла для запуска начинается с анализа каталога вызывающей программы (1-го экземпляра). Файл успешно обнаруживается и запускается (2-ой экземпляр).

    Укажите полный путь файла для запуска нового процесса чтобы не было двусмысленности.


    Если сообщение помогло Вам, пожалуйста, не забудьте отметить его как ответ данной темы. Удачи в программировании!

    11 апреля 2017 г. 11:32

Все ответы

  • Здравствуйте.

    Невозможно давать какие-либо советы по работе программы, не увидев ее кода :)

    И что означает "переименование определенным образом"?


    Если сообщение помогло Вам, пожалуйста, не забудьте отметить его как ответ данной темы. Удачи в программировании!

    11 апреля 2017 г. 10:31
  • namespace WindowsFormsApplication1 { public partial class GetMAC : Form { /**/ /**/ public GetMAC() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { pcName = textBox1.Text; // do job Process proc = new Process { StartInfo = new ProcessStartInfo { FileName = "getmac",

    ....

      proc.Start();


    namespace WindowsFormsApplication1
    {
        static class Program
        {
            /// <summary>
            /// The main entry point for the application.
            /// </summary>
            [STAThread]
            static void Main()
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new GetMAC());
            }
        }
    }

    если надо могу больше но это основное.  так вот если назвать файл  getmac.exe  то по нажатию кнопки button1_Click запускаеться копия программы

    11 апреля 2017 г. 11:25
  • Все логично.

    Для запуска нового процесса указано только имя файла "getmac" (без пути). Поиск файла для запуска начинается с анализа каталога вызывающей программы (1-го экземпляра). Файл успешно обнаруживается и запускается (2-ой экземпляр).

    Укажите полный путь файла для запуска нового процесса чтобы не было двусмысленности.


    Если сообщение помогло Вам, пожалуйста, не забудьте отметить его как ответ данной темы. Удачи в программировании!

    11 апреля 2017 г. 11:32
  • Спасибо. были такие подозрения.
    11 апреля 2017 г. 13:31