Skip to content

Commit

Permalink
0.8.9
Browse files Browse the repository at this point in the history
  • Loading branch information
hessandrew committed Mar 22, 2023
1 parent e3a175b commit 7433ef6
Show file tree
Hide file tree
Showing 48 changed files with 447 additions and 271 deletions.
4 changes: 2 additions & 2 deletions PDFProcessor/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,5 @@
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
// übernehmen, indem Sie "*" eingeben

[assembly: AssemblyVersion("0.8.7.0")]
[assembly: AssemblyFileVersion("0.8.7.0")]
[assembly: AssemblyVersion("0.8.9.0")]
[assembly: AssemblyFileVersion("0.8.9.0")]
24 changes: 5 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,18 +6,20 @@ Print to PDF, PDF/A-1b, PDF/A-2b, PDF/A-3b, OCR, PDF/X, PDF/Image, PNG, JPEG, TI

# Download

https://github.com/clawsoftware/clawPDF/releases/download/0.8.7/clawPDF_0.8.7_setup.msi
https://github.com/clawsoftware/clawPDF/releases/download/0.8.9/clawPDF_0.8.9_setup.msi


# Features

- Print to PDF, PDF/A-1b, PDF/A-2b, PDF/A-3b, OCR, PDF/X, PDF/Image, PNG, JPEG, TIF and TXT
- Print 100% valid [PDF/A-1b](https://github.com/clawsoftware/clawPDF/raw/master/docs/pdfa_valid/PDFA-1b.pdf), [PDF/A-2b](https://github.com/clawsoftware/clawPDF/raw/master/docs/pdfa_valid/PDFA-2b.pdf) and [PDF/A-3b](https://github.com/clawsoftware/clawPDF/raw/master/docs/pdfa_valid/PDFA-3b.pdf)
- [Optical Character Recognition (OCR)](https://github.com/clawsoftware/clawPDF/wiki/Optical-Character-Recognition-(OCR))
- [Scripting Interface](https://github.com/clawsoftware/clawPDF/wiki/Scripting-Interface)
- [Drag and Drop Support](https://github.com/clawsoftware/clawPDF/wiki/Drag-and-Drop)
- [Merge Files](https://github.com/clawsoftware/clawPDF/wiki/Merge-Files)
- [Command Line Support](https://github.com/clawsoftware/clawPDF/wiki/Command-Line-Commands)
- [Silent Printing](https://github.com/clawsoftware/clawPDF/wiki/Silent-Print)
- [Custom Print Sizes](https://github.com/clawsoftware/clawPDF/wiki/Custom-Print-Sizes)
- Full Unicode Support
- Multiple Profiles
- [Post Actions](https://github.com/clawsoftware/clawPDF/wiki/Post-Actions)
Expand Down Expand Up @@ -88,15 +90,9 @@ clawPDF.exe /ManagePrintJobs

# Changelog

## v0.8.7 (2023.03.21)
## v0.8.9 (2023.03.22)

- [feature] Optical Character Recognition (OCR)
- [feature] Added PDF/A-3b
- [feature] Added PDF/Image
- [feature] Added more settings to the Print Job window
- [feature] Application Settings -> General -> Print Job Window -> Stay on top
- [feature] OutputPath Parameter
- [misc] Optimizations
- [feature] Scripting Interface

[more](https://github.com/clawsoftware/clawPDF/wiki/Changlog)

Expand All @@ -106,16 +102,6 @@ clawPDF.exe /ManagePrintJobs
- .Net Framework 4.6.2+


# Screenshot

![clawpdf1](clawPDF/docs/images/clawpdf1.png?raw=true "clawpdf1")
![clawpdf2](clawPDF/docs/images/clawpdf2.png?raw=true "clawpdf2")
![clawpdf3](clawPDF/docs/images/clawpdf3.png?raw=true "clawpdf3")
![clawpdf4](clawPDF/docs/images/clawpdf4.png?raw=true "clawpdf4")
![clawpdf5](clawPDF/docs/images/clawpdf5.png?raw=true "clawpdf5")
![clawpdf6](clawPDF/docs/images/clawpdf6.png?raw=true "clawpdf6")


# Build

- Visual Studio 2022
Expand Down
82 changes: 63 additions & 19 deletions SetupHelper/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -79,11 +79,11 @@ private static void Main(string[] args)
switch (clp.GetArgument("FileExtensions"))
{
case "Add":
MaybeInvokeWow6432(AddExplorerIntegration);
AddExplorerIntegration();
break;

case "Remove":
MaybeInvokeWow6432(RemoveExplorerIntegration);
RemoveExplorerIntegration();
break;

default:
Expand All @@ -106,11 +106,11 @@ private static void Main(string[] args)
switch (clp.GetArgument("ComInterface"))
{
case "Register":
MaybeInvokeWow6432(RegisterComInterface);
RegisterComInterface();
break;

case "Unregister":
MaybeInvokeWow6432(UnregisterComInterface);
UnregisterComInterface();
break;

default:
Expand Down Expand Up @@ -138,7 +138,7 @@ private static void Usage()
" © clawSoft");
Console.WriteLine();
Console.WriteLine("usage:");
Console.WriteLine("SetupHelper.exe [/FileExtensions=Add|Remove] [/ComInterface=Register|Unregister]");
Console.WriteLine("SetupHelper.exe [/Printer=Add|Remove /Name=Printer] [/FileExtensions=Add|Remove] [/ComInterface=Register|Unregister]");
}

private static bool Is64Bit()
Expand All @@ -158,29 +158,61 @@ private static void MaybeInvokeWow6432(Action<bool> wowAwareAction)
wowAwareAction(true);
}

private static void AddExplorerIntegration(bool wow6432)
private static void AddExplorerIntegration()
{
CallRegAsmForShell(wow6432, "clawPDFShell.dll", "/codebase");
if (Environment.Is64BitOperatingSystem)
{
CallRegAsmForShellWow6432("clawPDFShell.dll", "/codebase");
}
CallRegAsmForShell("clawPDFShell.dll", "/codebase");
}

private static void RemoveExplorerIntegration()
{
if (Environment.Is64BitOperatingSystem)
{
CallRegAsmForShellWow6432("clawPDFShell.dll", "/unregister");
}
CallRegAsmForShell("clawPDFShell.dll", "/unregister");
}

private static void RemoveExplorerIntegration(bool wow6432)
private static void RegisterComInterface()
{
CallRegAsmForShell(wow6432, "clawPDFShell.dll", "/unregister");
if(Environment.Is64BitOperatingSystem)
{
CallRegAsmForShellWow6432("clawPDF.exe", "/codebase /tlb");
}
CallRegAsmForShell("clawPDF.exe", "/codebase /tlb");
}

private static void RegisterComInterface(bool wow6432)
private static void UnregisterComInterface()
{
CallRegAsmForShell(wow6432, "clawPDF.exe", "/codebase /tlb");
if (Environment.Is64BitOperatingSystem)
{
CallRegAsmForShellWow6432("clawPDF.exe", "/unregister");
}
CallRegAsmForShell("clawPDF.exe", "/unregister");
}

private static void UnregisterComInterface(bool wow6432)
private static void CallRegAsmForShellWow6432(string fileName, string parameters)
{
CallRegAsmForShell(wow6432, "clawPDF.exe", "/unregister");
var regAsmPathWow6432 = GetRegAsmPathWow6432();

var appDir = GetApplicationDirectory();
var shellDll = Path.Combine(appDir, fileName);

var shellExecuteHelper = new ShellExecuteHelper();

var paramString = $"\"{shellDll}\" {parameters}";
Console.WriteLine(regAsmPathWow6432 + " " + paramString);

var result = shellExecuteHelper.RunAsAdmin(regAsmPathWow6432, paramString);
Console.WriteLine(result.ToString());
}

private static void CallRegAsmForShell(bool wow6432, string fileName, string parameters)
private static void CallRegAsmForShell(string fileName, string parameters)
{
var regAsmPath = GetRegAsmPath(wow6432);
var regAsmPath = GetRegAsmPath();

var appDir = GetApplicationDirectory();
var shellDll = Path.Combine(appDir, fileName);
Expand All @@ -194,11 +226,23 @@ private static void CallRegAsmForShell(bool wow6432, string fileName, string par
Console.WriteLine(result.ToString());
}

private static string GetRegAsmPath(bool wow6432)
private static string GetRegAsmPathWow6432()
{
var regPath = @"HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework";

Console.WriteLine(regPath);

var dotNetPath = Registry.GetValue(regPath, "InstallRoot", null)?.ToString();

if (string.IsNullOrEmpty(dotNetPath))
throw new InvalidOperationException("Cannot find .Net Framework in HKLM\\" + regPath);

return Path.Combine(dotNetPath, "v4.0.30319\\RegAsm.exe");
}

private static string GetRegAsmPath()
{
var regPath = wow6432
? @"HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework"
: @"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework";
var regPath = @"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework";

Console.WriteLine(regPath);

Expand Down
4 changes: 2 additions & 2 deletions SetupHelper/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,5 @@
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
// übernehmen, indem Sie "*" eingeben:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("0.8.7.0")]
[assembly: AssemblyFileVersion("0.8.7.0")]
[assembly: AssemblyVersion("0.8.9.0")]
[assembly: AssemblyFileVersion("0.8.9.0")]
4 changes: 2 additions & 2 deletions clawPDF.Bridge/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,5 @@
// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
// übernehmen, indem Sie "*" eingeben:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("0.8.7.0")]
[assembly: AssemblyFileVersion("0.8.7.0")]
[assembly: AssemblyVersion("0.8.9.0")]
[assembly: AssemblyFileVersion("0.8.9.0")]
4 changes: 2 additions & 2 deletions clawPDF.Core/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,6 @@
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
// übernehmen, indem Sie "*" eingeben

[assembly: AssemblyVersion("0.8.7.0")]
[assembly: AssemblyFileVersion("0.8.7.0")]
[assembly: AssemblyVersion("0.8.9.0")]
[assembly: AssemblyFileVersion("0.8.9.0")]
[assembly: NeutralResourcesLanguage("")]
4 changes: 2 additions & 2 deletions clawPDF.Mail/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,5 @@
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
// übernehmen, indem Sie "*" eingeben:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("0.8.7.0")]
[assembly: AssemblyFileVersion("0.8.7.0")]
[assembly: AssemblyVersion("0.8.9.0")]
[assembly: AssemblyFileVersion("0.8.9.0")]
4 changes: 2 additions & 2 deletions clawPDF.Settings/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,5 @@
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
// übernehmen, indem Sie "*" eingeben

[assembly: AssemblyVersion("0.8.7.0")]
[assembly: AssemblyFileVersion("0.8.7.0")]
[assembly: AssemblyVersion("0.8.9.0")]
[assembly: AssemblyFileVersion("0.8.9.0")]
4 changes: 2 additions & 2 deletions clawPDF.Shared/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -41,5 +41,5 @@
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
// übernehmen, indem Sie "*" eingeben

[assembly: AssemblyVersion("0.8.7.0")]
[assembly: AssemblyFileVersion("0.8.7.0")]
[assembly: AssemblyVersion("0.8.9.0")]
[assembly: AssemblyFileVersion("0.8.9.0")]
4 changes: 2 additions & 2 deletions clawPDF.Utilities/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,6 @@
// übernehmen, indem Sie "*" eingeben:
// [assembly: AssemblyVersion("1.0.*")]

[assembly: AssemblyVersion("0.8.7.0")]
[assembly: AssemblyFileVersion("0.8.7.0")]
[assembly: AssemblyVersion("0.8.9.0")]
[assembly: AssemblyFileVersion("0.8.9.0")]
[assembly: NeutralResourcesLanguage("")]
4 changes: 2 additions & 2 deletions clawPDF/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,6 @@
// Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern
// übernehmen, indem Sie "*" eingeben

[assembly: AssemblyVersion("0.8.7.0")]
[assembly: AssemblyFileVersion("0.8.7.0")]
[assembly: AssemblyVersion("0.8.9.0")]
[assembly: AssemblyFileVersion("0.8.9.0")]
[assembly: NeutralResourcesLanguage("")]
100 changes: 0 additions & 100 deletions clawPDF/README.md

This file was deleted.

Loading

0 comments on commit 7433ef6

Please sign in to comment.