Convert .exe file to COM dll, contribute to open source proj
$250-750 USD
Płatność przy odbiorze
Convert .exe file to COM dll, contribute to open source project.
I will pay for your work, and your work will be contributed to an open source project.
The open source project in question is [url removed, login to view]
It is a project that lets you convert Html into Pdf based on the WebKit rendering engine used in the Chrome and Safari browsers.
I want to contribute to the windows version.
Currently the windows version compiles into an .exe file called wkhtmltopdf.exe.
I want this to be compiled into a COM/COM+ dll file instead, no .exe, just a .dll file with one method in the COM API called generatePdf. Or even better I want the API to be wrapped in a dotNet API.
wkhtmltopdf is currently compiled for windows with the MinGw C++ compiler (see [url removed, login to view])
The current [url removed, login to view] file takes a lot of command line arguments, in the dll I want these commandline arguments to be passed as a string.
I want the wkhtmltopdf API call to return an object with the following properties
- ExitCode (to check for errors)
- StandardOut (IMPORTANT: to get pdf as bytesting instead of writing as a file, used with the command line argument "-" instead of a file name)
- StandardError (for error finding)
I Imagine that the final output of the project will be the files:
- [url removed, login to view]
- [url removed, login to view]
- [url removed, login to view]
- [url removed, login to view] (only new windows file)
A successfull completion of this project means that I can
- add the above files to a ASP.Net websites Bin folder
- create a .aspx file where I can get the pdf version of for example [url removed, login to view] by this C# code
--------------------------------------
[url removed, login to view] pgr = [url removed, login to view]("[url removed, login to view] -"); //here I can pass other command line arguments from wkhtmltopdf
if([url removed, login to view] != 0 || [url removed, login to view]!=2){
throw new InvalidOperationException("Error generating Pdf, ErrorCode:" + [url removed, login to view] + ", Error:" + [url removed, login to view])
}
byte[] pdfFile = [url removed, login to view]
// pdfFile now contains the pdf file version of [url removed, login to view]
-------------------------------------
It is important that this can be done without the need for execute rights to any folders in the Asp.Net website.
When you can do this, I will consider the project complete.
The resons I want a dll instead of an exe are:
- In a shared hosting environment like a lot of smaller websites use, you do not have permisson to run .exe files. So a lot of users can't use wkhtmltopdf
- On windows, if you want to convert a lot of html, running an .exe file repeatedly costs a lot more resources than running an API call to a dll repeatedly
It is important that you document excately what you have done, so we can contribute your work to the wkhtmltopdf open source project, and the dll you create can be part of future updates to the wkhtmltopdf project
Links
wkhtmltopdf: [url removed, login to view]
manual for wkhtmltopdf: [url removed, login to view]~jakobt/[url removed, login to view]
information on compiling with windows: [url removed, login to view]
The line:
if(pgr.ErrorCode != 0 || pgr.ErrorCode!=2){
should read:
if(pgr.ErrorCode != 0 && pgr.ErrorCode!=2){
Numer ID Projektu: #740913