2012-08-17 45 views
6

我的項目給出了錯誤..在哪裏可以複製gsdll32.dll讓PDF到圖像轉換器在我的WPF應用程序中工作?

*無法找到DLL「gsdll32.dll」名爲「gsapi_new_instance」的切入點。*

嘗試使用爲pdf轉換成圖像格式時幽靈腳本解釋器DLL「gsdll32.dll」

即使我試圖在

WIN \ System32下或在該項目的directory..The錯誤remai告訴記者,在許多論壇,如複製此DLL所有需要的地方NS相同.. :(

我用的幽靈腳本 給出的PDFConvert.cs類和寫在我的轉換器按鈕點擊下面的代碼:

private void btnConvert_Click(object sender, RoutedEventArgs e) 
{ 
    //First We Check whether the Dll is present 

    if (!File.Exists(AppDomain.CurrentDomain.BaseDirectory + "\\gsdll32.dll")) 
    { 
     MessageBox.Show("The library 'gsdll32.dll' required to run this program is not present! download GhostScript and copy \"gsdll32.dll\" to this program directory"); 
     return; 
    } 
    if (string.IsNullOrEmpty(txtSingleFile.Text)) 
    { 
     MessageBox.Show("Enter the File name"); 
     txtSingleFile.Focus(); 
     return; 
    } 
    else if (!File.Exists(txtSingleFile.Text)) 
    { 
     MessageBox.Show("The File Does not exists"); 
     txtSingleFile.Focus(); 
    } 

    else 
     ConvertPdfToImage(txtSingleFile.Text); 
} 

和我ConvertPdfToImage方法是像:

//The Ghost-Script Class Object Creation: 
PdfToImage.PDFConvert converter = new PdfToImage.PDFConvert(); 
public void ConvertPdfToImage(string filename) 
{ 
    //bool converted = false; 
    System.IO.FileInfo input = new FileInfo(filename); 
    string outPut = string.Format("{0}\\{1}{2}", input.DirectoryName, input.Name, txtExtensionName.Text); 

    converter.OutputFormat = txtExtensionName.Text; 

    outPut = outPut.Replace(txtExtensionName.Text, string.Format("{1}{0}", txtExtensionName.Text, DateTime.Now.Ticks)); 
    converter.Convert(input.FullName, outPut); 
    lblConvertingResult.Content = string.Format("{0}:File Converted..!!", DateTime.Now.ToShortTimeString()); 
} 

我相信這個錯誤出現,因爲gsdll32.dll庫的錯位的,因爲相同的代碼提供了由幽靈腳本解釋器API樣品演示運行以及.. 請推薦的準確位置WH以前我shuld保持dll-gsdll32.dll。

+0

看一看:http://stackoverflow.com/questions/653178 /無法找到一個入口點命名函數在DLL中的C - C - 清晰型的騙子 – JleruOHeP 2012-08-17 13:40:22

+0

@JleruOHeP感謝您的答覆..但我找不到在這個頁面爲我的情況..請更具體..在這裏,我們可以添加這個鬼腳本的DLL來使項目working.Because這個DLL不會被添加爲我的BIN文件夾中的參考。 – 2012-08-17 13:54:40

回答

5

我知道這個問題是有點老了,但如果有人有這個問題,我解決它以這樣的方式下載和從Visual Studio http://www.nuget.org/packages/GhostScriptSharp/

+0

哦謝謝蘇利塔..我幾乎完全失去了希望得到這個問題的適當解決方案.. :( – 2013-11-25 10:14:44

0

安裝GhostScriptSharp封裝的dll的完整路徑,而不是唯一的名字試試。
一樣,如果你的DLL保存在d:\ TestApplication \ BIN \ gsdll32.dll然後,

[DllImport("gsdll32.dll", EntryPoint="gsapi_new_instance")] 

上面的語句將

[DllImport("D:\\TestApplication\\bin\\gsdll32.dll", EntryPoint="gsapi_new_instance")] 
相關問題