Проверить и прописать в реестр данные об ассоциации файлов - C#

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток. Столкнулся с проблемой : Нужно при нажатии кнопки проверить и если это не так прописать в реестр данные об ассоциации файлов (я знаю список расширений которые нужно ассоциировать с определенной программой С:\MyProg\Prog.exe) То есть при установки моей программы на компьютер и нажатии кнопки, которая бы открывала файл используя дополнительную программу которая идет вместе с моей. Соответственно решил что для выполнения этих действий потребуется использовать командную строку, после поисков по форуму выделил для себя 3 вещи которые мне в этом могут помочь :
Process.Start("cmd.exe");
System.Diagnostics.Process.Start
RegistryKey
Но к сожалению не нашел ничего, что бы после запуска этой командной строки помогло бы мне с решением самой задачи. Открытие файла :
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Diagnostics;

namespace WindowsFormsApplication4
{
    public partial class Form1 : Form
    {
        string Path;
        int i;
        public Form1()
        {
            InitializeComponent();
            Path = System.Reflection.Assembly.GetExecutingAssembly().Location;
            MessageBox.Show(Path);
            for (i = Path.Length - 1 ; i > 0; i--)
            {
                if (Path.Substring(i,1)==@"\")
                {
                    Path = Path.Substring(0, i + 1);
                    break;
                }
            }
            MessageBox.Show(Path);
        }
 
        private void button1_Click(object sender, EventArgs e)
        {

            MyProcess myProcess = new MyProcess();
 
            myProcess.OpenApplication(Path);
 
        }
    }

    class MyProcess
    {
        
        public void OpenApplication(string Path)
        {
            
            Process.Start(Path + "Prog.exe");
        }
 
    }

}

Решение задачи: «Проверить и прописать в реестр данные об ассоциации файлов»

textual
Листинг программы
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.obj]
 
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.obj\OpenWithList]
 
""a""=""Anim8or.exe""
""MRUList"" = ""a""
 
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.obj\OpenWithProgids]
""obj"" = hex(0):
""OBJ.DOC"" = hex(0):
 
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.obj\UserChoice]
""Hash""=""lfZre0y6wQU=""
""ProgId""=""Applications\\Anim8or.exe""

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.4 из 5
Похожие ответы