winform如何实现 打开文件,然后取得文件路径

时间:2022-11-01 16:05:17
C#开发的一个能打开pdf文件的工具,我现在想要实现计算机上的pdf文件默认打开就是用我的工具打开,右键点击打开或双击打开pdf文件,启动工具,并打开文件。其实就是我在工具中如何得到当前打开的pdf文件的路径。

8 个解决方案

#1


改注册表,不用更多提示了吧

#2


引用 1 楼 rocmemory 的回复:
改注册表,不用更多提示了吧


改注册表我试过,现在已经设为了默认程序,我不应该在编写工具的代码中做一些事情,处理打开文件这么一个事件吗
你说的改注册表就是实现设置默认程序吧

#3


打开文件会传给你一个包含文件路径的命令行参数

#4



            //选择图片  然后画在页面上面 最终保存到数据库中
            OpenFileDialog File = new OpenFileDialog();
            File.Multiselect = true;
            File.Title = "请选择图片";
            File.Filter = "*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP";
            //测试弹出 选择的文件路径名
            if (File.ShowDialog() == DialogResult.OK)
            {
                filename = File.FileName;
                //MessageBox.Show("已选择文件:" + filename,"选择文件提示",MessageBoxButtons.OK,MessageBoxIcon.Information);

                //绑定到pictureBox中
                pictureBox1.Image = Image.FromFile(filename);
            }

#5


xxx.exe "xxxx.pdf"   文件在命令行第一个参数里

#6


如果是控制台程序,那么文件名会在Main函数的args参数中
如果是WPF,在App的OnStartup的StartupEventArgs参数中有个Args
如果是winfrom,修改Program中的main函数,将static void Main()修改为static void Main(string[] args)

#7


引用 4楼jlz_tt 的回复:

            //选择图片  然后画在页面上面 最终保存到数据库中
            OpenFileDialog File = new OpenFileDialog();
            File.Multiselect = true;
            File.Title = "请选择图片";
            File.Filter = "*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP";
            //测试弹出 选择的文件路径名
            if (File.ShowDialog() == DialogResult.OK)
            {
                filename = File.FileName;
                //MessageBox.Show("已选择文件:" + filename,"选择文件提示",MessageBoxButtons.OK,MessageBoxIcon.Information);

                //绑定到pictureBox中
                pictureBox1.Image = Image.FromFile(filename);
            }
你发错地方了吧,还没见过这样接分的

#8


引用 6 楼 songbing774933 的回复:
如果是控制台程序,那么文件名会在Main函数的args参数中
如果是WPF,在App的OnStartup的StartupEventArgs参数中有个Args
如果是winfrom,修改Program中的main函数,将static void Main()修改为static void Main(string[] args)

顶一个

#1


改注册表,不用更多提示了吧

#2


引用 1 楼 rocmemory 的回复:
改注册表,不用更多提示了吧


改注册表我试过,现在已经设为了默认程序,我不应该在编写工具的代码中做一些事情,处理打开文件这么一个事件吗
你说的改注册表就是实现设置默认程序吧

#3


打开文件会传给你一个包含文件路径的命令行参数

#4



            //选择图片  然后画在页面上面 最终保存到数据库中
            OpenFileDialog File = new OpenFileDialog();
            File.Multiselect = true;
            File.Title = "请选择图片";
            File.Filter = "*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP";
            //测试弹出 选择的文件路径名
            if (File.ShowDialog() == DialogResult.OK)
            {
                filename = File.FileName;
                //MessageBox.Show("已选择文件:" + filename,"选择文件提示",MessageBoxButtons.OK,MessageBoxIcon.Information);

                //绑定到pictureBox中
                pictureBox1.Image = Image.FromFile(filename);
            }

#5


xxx.exe "xxxx.pdf"   文件在命令行第一个参数里

#6


如果是控制台程序,那么文件名会在Main函数的args参数中
如果是WPF,在App的OnStartup的StartupEventArgs参数中有个Args
如果是winfrom,修改Program中的main函数,将static void Main()修改为static void Main(string[] args)

#7


引用 4楼jlz_tt 的回复:

            //选择图片  然后画在页面上面 最终保存到数据库中
            OpenFileDialog File = new OpenFileDialog();
            File.Multiselect = true;
            File.Title = "请选择图片";
            File.Filter = "*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP";
            //测试弹出 选择的文件路径名
            if (File.ShowDialog() == DialogResult.OK)
            {
                filename = File.FileName;
                //MessageBox.Show("已选择文件:" + filename,"选择文件提示",MessageBoxButtons.OK,MessageBoxIcon.Information);

                //绑定到pictureBox中
                pictureBox1.Image = Image.FromFile(filename);
            }
你发错地方了吧,还没见过这样接分的

#8


引用 6 楼 songbing774933 的回复:
如果是控制台程序,那么文件名会在Main函数的args参数中
如果是WPF,在App的OnStartup的StartupEventArgs参数中有个Args
如果是winfrom,修改Program中的main函数,将static void Main()修改为static void Main(string[] args)

顶一个