当我试图打开一个excel文件来计算她的工作表号时,我会得到一个System.DllNotFoundException。所讨论的dll是ole32.dll。在网上,我读到这个dll是相对于windows的,但是我使用。我怎样才能解决这个问题?
这是代码:
using System;
using System.IO;
using Microsoft.Office.Interop.Excel;
using Excel = Microsoft.Office.Interop.Excel;
namespace Itec
{
class MainClass
{
public static int countSheet(string file){
int numSheet = 1;
Application excelApp = new Application();
Workbook workBook = excelApp.Workbooks.Open("d:/Book1.xls");
numSheet = workBook.Sheets.Count;
return numSheet;
}
public static void Main(string[] args)
{
string user, fileName, pathFile, ext;
do
{
user = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
Console.WriteLine("Inserire il nome del file (se è in una cartella scrivere nel seguente formato \"nomeCartella/nomeFile.pdf\"): ");
fileName = Console.ReadLine();
pathFile = "/Users/" + user + "/Desktop/" + fileName;
ext = Path.GetExtension(pathFile);
if (String.Equals(ext, ".xlsx"))
{
if (File.Exists(pathFile))
{
countSheet(pathFile);
}
else
{
Console.WriteLine("Il file inserito non esiste");
Console.WriteLine("Premere invio per riprovare");
Console.ReadKey();
}
}
else
{
Console.WriteLine("Estensione non corretta");
Console.WriteLine("Premere invio per riprovare");
Console.ReadKey();
}
}
while (!String.Equals(ext, ".xlsx") && !File.Exists(pathFile));
}
}
}https://stackoverflow.com/questions/46485774
复制相似问题