У меня мало знаний по C#, и я уже некоторое время учился. Я хотел бы знать, есть ли другие способы доступа к переменным из другой формы в другой .exe программе .
Прежде чем вы сделаете вывод, что есть другие форумы, связанные с к топи c, да, я сделал поиск в Google и нашел много. Но я не мог найти тот, который близок к тому, что я ищу, или, может быть, я еще не нашел. Поэтому я решил опубликовать здесь, чтобы посмотреть, есть ли какая-нибудь помощь, которую я могу получить, пока я все еще ищу соответствующие решения.
Вот краткое изложение того, что я пытаюсь сделать.
Пользователь введет файл .csv, содержащий данные, путь к файлу будет сохранен в строковой переменной FilePath при нажатии кнопки обзора.
В другой программе ( .exe ), используя C# в качестве я пытаюсь получить доступ к переменной FilePath и использовать ее в программе .exe .
* Короче говоря, я я пытаюсь получить доступ и передать данные, полученные в форме окна и использовать / передать их .exe программе для других целей.
В форме окна строка путь к файлу хранится в FilePath . Таким образом, путь к файлу выглядит примерно так: "C: \ Users \ Students \ Downloads \ Project.csv" .
На рисунке ниже показан пользовательский интерфейс, разработанный в форме.
//Window Form Codes
private string filePath;
public string FilePath //<======= stored here
{
get { return filePath; } // get method
set { filePath = value; } // set method
}
//string filePath;
private void Browse_folder_Click(object sender, EventArgs e)
{
using (OpenFileDialog get_file_path = new OpenFileDialog())
{
if (get_file_path.ShowDialog() == DialogResult.OK)
{
//Get the path of specified file
FilePath = get_file_path.FileName;
file_loc_text.Text = string.Format("{0}", filePath);
return;
}
}
}
Теперь я пытаюсь получить доступ FilePath из формы и скопируйте путь файла строки в класс, который наследуется от другой .exe программы , которая также использует язык C#.
//.exe Program Codes
class BrowseFolderTestStep : ABC //<=== ABC is from another .exe program
{
Form f = new Form();
public override void Run()
{
StreamReader pathIn = File.OpenText(f.FilePath);
pathIn.Close();
}
}
Из списка наблюдения я могу наблюдать путь к строковому файлу, назначенный FilePath . При попытке получить доступ к FilePath в программе .exe , я получаю "нулевое значение" для FilePath, путь к строковому файлу не передается, в результате чего программа CRA sh. Одно из решений, которое я мог бы придумать, - это сохранить путь к строковому файлу, полученный из Форма окна , в виде текстового файла, файла csv и т. Д. c и получить доступ к пути к файлу из файла в . программа exe . Я хотел бы знать, есть ли другие способы доступа к FilePath , поэтому мне не нужно получать текстовый файл. Я не уверен, смогу ли я получить доступ, если он хранится в потоке памяти.
Ваша помощь приветствуется!