private static void WordDocKiller()
        {
            while (hasRunningWord)
            {
                Microsoft.Office.Interop.Word.Application runninApp = (Microsoft.Office.Interop.Word.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Word.Application");
                if (runninApp == null)
                {
                    hasRunningWord = false;
                }
                else
                {
                    runninApp.Quit(false);
                }

                foreach (Microsoft.Office.Interop.Word.Document d in runninApp.Documents)
                {
                    if (d.FullName.ToLower() == runninApp.Path.ToLower())
                    {
                        object saveOption     = Microsoft.Office.Interop.Word.WdSaveOptions.wdDoNotSaveChanges;
                        object originalFormat = Microsoft.Office.Interop.Word.WdOriginalFormat.wdOriginalDocumentFormat;
                        object routeDocument  = false;
                        d.Close(ref saveOption, ref originalFormat, ref routeDocument);
                    }
                }
            }
        }
Ejemplo n.º 2
0
        public static void SaveToDirectory(string text, string directory)
        {
            //Create an instance for word app
            Microsoft.Office.Interop.Word.Application winword = new Microsoft.Office.Interop.Word.Application();

            //Set animation status for word application
            winword.ShowAnimation = false;

            //Set status for word application is to be visible or not.
            winword.Visible = false;

            //Create a missing variable for missing value
            object missing = System.Reflection.Missing.Value;

            //Create a new document
            Microsoft.Office.Interop.Word.Document document = winword.Documents.Add(ref missing, ref missing, ref missing, ref missing);

            //adding text to document
            document.Content.SetRange(0, 0);
            document.Content.Text = text;

            object fileName = directory;

            document.SaveAs2(ref fileName);
            document.Close(ref missing, ref missing, ref missing);
            document = null;
            winword.Quit(ref missing, ref missing, ref missing);
            winword = null;
        }
        private void CloseAllWinWord()
        {
            while (Process.GetProcessesByName("winword").Count() > 0)
            {
                Microsoft.Office.Interop.Word.Application wordInstance = (Microsoft.Office.Interop.Word.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Word.Application");

                foreach (Microsoft.Office.Interop.Word.Document doc in wordInstance.Documents)
                {
                    doc.Close();
                }

                wordInstance.Quit(false);
                Marshal.FinalReleaseComObject(wordInstance);
                wordInstance = null;
            }
        }
Ejemplo n.º 4
0
        public static void SaveText(string text)
        {
            try
            {
                //Create an instance for word app
                Microsoft.Office.Interop.Word.Application winword = new Microsoft.Office.Interop.Word.Application();

                //Set animation status for word application
                winword.ShowAnimation = false;

                //Set status for word application is to be visible or not.
                winword.Visible = false;

                //Create a missing variable for missing value
                object missing = System.Reflection.Missing.Value;

                //Create a new document
                Microsoft.Office.Interop.Word.Document document = winword.Documents.Add(ref missing, ref missing, ref missing, ref missing);

                //adding text to document
                document.Content.SetRange(0, 0);
                document.Content.Text = text;

                //Save the document
                Microsoft.Win32.SaveFileDialog dlg = new Microsoft.Win32.SaveFileDialog();
                dlg.Filter = @"Word Files (.doc, .docx)|*.doc;*.docx|Text Files (.txt)|*.txt";
                object          fileName = "";
                Nullable <bool> result   = dlg.ShowDialog();
                if (result == true)
                {
                    fileName = dlg.FileName;
                }
                ;

                document.SaveAs2(ref fileName);
                document.Close(ref missing, ref missing, ref missing);
                document = null;
                winword.Quit(ref missing, ref missing, ref missing);
                winword = null;
                MessageBox.Show("Файл успешно создан");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Oh shit, I'm sorry");
            }
        }
Ejemplo n.º 5
0
        //Select a template
        private void cbTemplate_SelectedValueChanged(object sender, EventArgs e)
        {
            try
            {
                Cursor.Current = Cursors.WaitCursor;
                ComboBox          cb          = sender as ComboBox;
                var               template    = cb.SelectedItem.ToString();
                object            FileName    = @"C:\Users\ich\Desktop\PI_Winform\Pi.ExportTool\TemplateFile\" + template + ".docx";
                object            readOnly    = true;
                object            visible     = true;
                object            save        = false;
                object            missing     = Type.Missing;
                object            newTemplate = false;
                object            docType     = 0;
                Word._Document    oDoc        = null;
                Word._Application oWord       = new Word.Application()
                {
                    Visible = false
                };
                oDoc = oWord.Documents.Open(
                    ref FileName, ref missing, ref readOnly, ref missing,
                    ref missing, ref missing, ref missing, ref missing,
                    ref missing, ref missing, ref missing, ref visible,
                    ref missing, ref missing, ref missing, ref missing);
                oDoc.ActiveWindow.Selection.WholeStory();
                oDoc.ActiveWindow.Selection.Copy();
                IDataObject data = Clipboard.GetDataObject();
                richTextBox1.Rtf = data.GetData(DataFormats.Rtf).ToString();
                oWord.Quit(ref missing, ref missing, ref missing);

                GetParams();

                Cursor.Current = Cursors.Default;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Ejemplo n.º 6
0
        private void генерацияФОСToolStripMenuItem_Click(object sender, EventArgs e)
        {
            TicketsProgressBar.Visible = true;
            bool a = false;
            bool b = false;

            TicketsProgressBar.Maximum = ids.Count;
            Microsoft.Office.Interop.Word.Application app = new Microsoft.Office.Interop.Word.Application();
            Document doc = app.Documents.Add(Visible: true);

            doc.PageSetup.BottomMargin = 56.9f;
            doc.PageSetup.LeftMargin   = 64.1f;
            doc.PageSetup.TopMargin    = 56.9f;
            doc.PageSetup.RightMargin  = 43.2f;
            Range r = doc.Range();

            r.InsertAfter("Оценочные материалы при формировании рабочих программ дисциплин (модулей)" + "\n");
            r.InsertAfter("Направление подготовки / специальность: " + getMajorName() + "\n");
            int majorname = getMajorName().Length;

            r.InsertAfter("Профиль / специализация: " + GetSprcName() + "\n");
            int specName = GetSprcName().Length;

            r.InsertAfter("Дисциплина: " + discipline + "\n" + "\n");
            int discip = discipline.Length;

            r.InsertAfter("Формируемые компетенции: " + GetCompetenceForDocument() + "\n" + "\n");
            r.Paragraphs.Alignment = WdParagraphAlignment.wdAlignParagraphLeft;
            r.Font.Size            = 10;
            r.Font.Name            = "Arial";
            for (int i = 0; i < ids.Count; i++)
            {
                int y = ids[i];
                switch (y)
                {
                case 1:
                {
                    if (ids[i] == 1 && a == false)
                    {
                        r.InsertAfter("1. Описание показателей, критериев и шкал оценивания компетенций." + "\n");
                        r.InsertAfter("Показатели и критерии оценивания компетенций " + GetCompetenceForDocument() + "\n");
                        a = true;
                    }
                    else
                    {
                        r.InsertAfter("Показатели и критерии оценивания компетенций " + GetCompetenceForDocument() + "\n");
                    }
                    break;
                }

                case 2:
                {
                    if (ids[i] == 2 && a == false)
                    {
                        r.InsertAfter("1. Описание показателей, критериев и шкал оценивания компетенций." + "\n");
                        r.InsertAfter("Шкалы оценивания компетенций " + GetCompetenceForDocument() + "при сдаче экзамена или зачета с оценкой" + "\n");
                        a = true;
                    }
                    else
                    {
                        r.InsertAfter("Шкалы оценивания компетенций " + GetCompetenceForDocument() + "при сдаче экзамена или зачета с оценкой" + "\n");
                    }
                    break;
                }

                case 3:
                {
                    if (ids[i] == 3 && a == false)
                    {
                        r.InsertAfter("1. Описание показателей, критериев и шкал оценивания компетенций." + "\n");
                        r.InsertAfter("Шкалы оценивания компетенций " + GetCompetenceForDocument() + "при сдаче зачета" + "\n");
                        a = true;
                    }
                    else
                    {
                        r.InsertAfter("Шкалы оценивания компетенций " + GetCompetenceForDocument() + "при сдаче зачета" + "\n");
                    }
                    break;
                }

                case 4:
                {
                    if (ids[i] == 4 && a == false)
                    {
                        r.InsertAfter("1. Описание показателей, критериев и шкал оценивания компетенций." + "\n");
                        r.InsertAfter("Шкалы оценивания компетенций " + GetCompetenceForDocument() + "при защите курсового проекта/курсовой работы" + "\n");
                        a = true;
                    }
                    else
                    {
                        r.InsertAfter("Шкалы оценивания компетенций " + GetCompetenceForDocument() + "при защите курсового проекта/курсовой работы" + "\n");
                    }
                    break;
                }

                case 5:
                {
                    if (ids[i] == 5 && a == false)
                    {
                        r.InsertAfter("1. Описание показателей, критериев и шкал оценивания компетенций." + "\n");
                        r.InsertAfter("Компетенции обучающегося оцениваются следующим образом" + "\n");
                        a = true;
                    }
                    else
                    {
                        r.InsertAfter("Компетенции обучающегося оцениваются следующим образом" + "\n");
                        a = true;
                    }
                    break;
                }

                case 6:
                {
                    if (ids[i] == 6)
                    {
                        r.InsertAfter("Соответствие между бальной системой и системой оценивания по результатам тестирования устанавли-вается посредством следующей таблицы" + "\n");
                    }
                    break;
                }

                case 7:
                {
                    if (ids[i] == 7 && b == false)
                    {
                        r.InsertAfter("4. Оценка ответа обучающегося на вопросы, задачу (задание) экзаменационного билета, зачета, курсового проектирования." + "\n");
                        r.InsertAfter("Оценка ответа обучающегося на вопросы, задачу (задание) экзаменационного билета, зачета" + "\n");
                        b = true;
                    }
                    else
                    {
                        r.InsertAfter("Оценка ответа обучающегося на вопросы, задачу (задание) экзаменационного билета, зачета" + "\n");
                    }
                    break;
                }

                case 8:
                {
                    if (ids[i] == 8 && b == false)
                    {
                        r.InsertAfter("4. Оценка ответа обучающегося на вопросы, задачу (задание) экзаменационного билета, зачета, курсо-вого проектирования." + "\n");
                        r.InsertAfter("Оценка ответа обучающегося при защите курсового работы/курсового проекта" + "\n");
                        b = true;
                    }
                    else
                    {
                        r.InsertAfter("Оценка ответа обучающегося при защите курсового работы/курсового проекта" + "\n");
                    }
                    break;
                }

                default:
                    break;
                }
                generateTable(ids[i], doc);
                r.InsertAfter("\n");
                TicketsProgressBar.PerformStep();
            }
            r.SetRange(0, 74);
            r.Font.Bold            = 1;
            r.Font.Size            = 12;
            r.Paragraphs.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
            r.SetRange(74, 113);
            r.Font.Bold = 1;
            r.Font.Size = 12;
            int p = 114 + majorname;

            r.SetRange(p, p + 25);
            r.Font.Bold = 1;
            r.Font.Size = 12;
            p           = p + 25 + specName + 1;
            r.SetRange(p, p + 12);
            r.Font.Bold = 1;
            r.Font.Size = 12;
            p           = p + 12 + discip + 1;
            r.SetRange(p, p + 25);
            r.Font.Bold = 1;
            r.Font.Size = 12;
            doc.Save();
            doc.Close();
            app.Quit();
            TicketsProgressBar.Value = 0;
            MessageBox.Show("Фос успешно сгенерирован", "Информация", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }