Пример #1
0
        /// <summary>
        /// 実行ファイルのパスからアプリケーションを登録する
        /// </summary>
        /// <param name="filePath"></param>
        /// <param name="isFromDropped"></param>
        public void AddListFromPath(string filePath, bool isFromDropped = true)
        {
            string[] parsed = filePath.Split('\\');
            string   name   = parsed.Last().Replace(".exe", "");

            if (mainWindow.AppDatas.Any(a => a.ProcessName == name))
            {
                if (!isFromDropped)
                {
                    MessageBox.Show("既に登録されています");
                }
            }
            else
            {
                Mouse.OverrideCursor = Cursors.Wait;
                AppDataObject appData = new AppDataObject(mainWindow, name)
                {
                    DisplayedName = name
                };
                IconGetter.SetIconToNewAppData(filePath, appData);
                appData.SaveFileDatas();
                AddFileListWindow(appData);
                lock (mainWindow.AppDatas)
                {
                    mainWindow.AppDatas.Add(appData);
                }

                mainWindow.SaveAndLoader.SaveCsvData();
            }
            UpdateListView();
            Mouse.OverrideCursor = null;
        }
Пример #2
0
 /// <summary>
 /// アプリケーションのデータを削除
 /// </summary>
 /// <param name="appData"></param>
 public void RemoveAppData(AppDataObject appData)
 {
     appData.RemoveAllFileData();
     lock (AppDatas)
     {
         AppDatas.Remove(appData);
     }
     ListViewSetter.UpdateListView();
     SaveAndLoader.SaveCsvData();
     IconGetter.RemoveIconImage(appData.ProcessName);
 }