C# 在C中访问mysqldump.exe和mysql.exe

C# 在C中访问mysqldump.exe和mysql.exe,c#,mysql,.net,cmd,mysqldump,C#,Mysql,.net,Cmd,Mysqldump,我正在编写一个通过命令提示符mysql.exe和mysqldump.exe启动的应用程序。 这个想法是做一个备份,然后用不同的数据库名上传到mysql。 问题是,如果这些mysql.exe和mysqldump.exe未在cmd中注册,并且您必须手动键入它们的路径,我没有想到会发生什么。 我的申请被中断了。 因此,我想知道是否有任何自动的方法来找到这两个文件的路径以正确运行它们。 我想到的另一个解决方案是让用户浏览他的文件并选择这些可执行文件。要管理此路径,可以使用环境变量并从应用程序中获取它 s

我正在编写一个通过命令提示符mysql.exe和mysqldump.exe启动的应用程序。 这个想法是做一个备份,然后用不同的数据库名上传到mysql。 问题是,如果这些mysql.exe和mysqldump.exe未在cmd中注册,并且您必须手动键入它们的路径,我没有想到会发生什么。 我的申请被中断了。 因此,我想知道是否有任何自动的方法来找到这两个文件的路径以正确运行它们。
我想到的另一个解决方案是让用户浏览他的文件并选择这些可执行文件。

要管理此路径,可以使用环境变量并从应用程序中获取它

string sPath = System.Environment.GetEnvironmentVariable("MYSQL_DIR");
另一种解决方案是将两个可执行文件复制到应用程序路径,并使用相对路径访问它们

string sPath = "./";

希望有帮助。

我将尝试第一种解决方案。我考虑过你的第二个建议,但是如果mysql版本不同呢?这是第二个选项的问题。如果升级服务器版本,也必须升级这些可执行文件。因为转储文件可能不兼容,但是使用第一个选项时,您可能会遇到相同的问题,但是在另一个文件夹中。Hmmmm。。。System.Environment.GetEnvironmentVariableMYSQL_DIR返回空字符串。我错过什么了吗可以在mysql安装中创建此环境变量。如果您不需要它,您可以从开始->右键单击计算机->系统属性->环境变量中创建它。并将路径设置为mysql安装路径。