2016-07-04 1 views
0

У меня есть решение Visual Studio, которое содержит два проекта (1) консольное приложение C#; и (2) C# Excel Workbook.C# создать экземпляр книги Excel из консольного приложения

Консольное приложение создает некоторые данные, которые я хотел бы передать в книгу.

Для этого я создал метод в проекте книги Excel, который получает данные из консольного приложения. Однако я не могу создать экземпляр книги Excel. На данный момент я пытаюсь:

Excel.Application excelApplication = new Excel.Application(); Excel.Workbook excelWorkBook = excelApplication.Workbooks.Add ("MyBook.xls");

я мог бы жестко закодировать путь к файлу XLS, но я не хочу, чтобы это сделать, как я предпочел бы, чтобы обернуть все вверх в единый EXE-

Любые идеи?

ответ

1

Так что в основном вы спрашиваете, как обернуть два файла (exe и файл excel) в один exe.

Существует простой (и довольно неуклюжий) способ сделать это, который вращается вокруг использования Resources в C#, то есть программа придется сделать что-то похожее на следующее:

  1. Take первенствует источник файла из Resources, и записать его в файл при запуске программы (временный файл)
  2. Используйте текущий каталог + первенствует имя файла темп кормить в Worksheet.Add метод
  3. После редактирования хранить данные временного файла обратно в Resources вашего exe.

Другая возможность, вместо того чтобы использовать временный файл, читать поток байтов непосредственно в Worksheets.Add, если это поддерживается API (не стесняйтесь сказать мне, если это так).

EDIT: Great tutorial on using resources in C#.

Смежные вопросы