Update from Java 1.5 to Java 1.6 and VC2005 to VS2010
This commit is contained in:
28
build.xml
28
build.xml
@@ -3,23 +3,24 @@
|
|||||||
Ant build file for JACOB.
|
Ant build file for JACOB.
|
||||||
|
|
||||||
Created Feb 4, 2005 1:23:05 PM as part of migration from ANT
|
Created Feb 4, 2005 1:23:05 PM as part of migration from ANT
|
||||||
Last Modified March 24, 2007
|
Last Modified September 2 2013
|
||||||
|
|
||||||
Tested on Eclipse 3.3 with the Europa C++ plugins, Ant 1.7 and MS Visual C++ 8 (2005)
|
Tested on Eclipse 3.3 with the Europa C++ plugins, Ant 1.8 and MS Visual C++ 10 (2010)
|
||||||
Eclipse users are pretty lucky because the whole project
|
Eclipse users are pretty lucky because the whole project
|
||||||
can be built inside eclipse due to their built in ANT support.
|
can be built inside eclipse due to their built in ANT support.
|
||||||
|
|
||||||
The COM portion of this build requires MS Visual C++ 8.0. (2005)
|
The COM portion of this build requires MS Visual C++ 1.0. (2010)
|
||||||
The build proces defined in this build.xml file does not support
|
The build proces defined in this build.xml file does not support
|
||||||
|
|
||||||
YOU MUST define a file named compilation_tools.properties!
|
YOU MUST define a file named compilation_tools.properties!
|
||||||
The file for MS Visual C++ 8.0 building 32 and 64 bit (installed on windows 7 64 bit)
|
The file for MS Visual C++ 10 building 32 and 64 bit (installed on windows 7 64 bit)
|
||||||
(releases up to 1.11 only supported 32 bit builds) looks something like:
|
(releases up to 1.11 only supported 32 bit builds) looks something like:
|
||||||
|
|
||||||
JDK=c\:\\Program Files (x86)\\java\\jdk1.5.0_22
|
JDK=c\:\\Program Files (x86)\\java\\jdk1.6.0_31
|
||||||
MSDEV_DIR=c\:\\Program Files (x86)\\Microsoft Visual Studio 8\\VC
|
MSDEV_DIR=c\:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC
|
||||||
MSDEV_IDE_DIR=c\:\\Program Files (x86)\\Microsoft Visual Studio 8\\Common7\\IDE
|
MSDEV_IDE_DIR=c\:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\IDE
|
||||||
version=1.17-M2
|
MSDEV_PLATFORM_DIR=c\:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v7.0A
|
||||||
|
version=1.18-M1
|
||||||
|
|
||||||
DO NOT check compilation_tools.properties into source control as the
|
DO NOT check compilation_tools.properties into source control as the
|
||||||
values are specific to YOUR environment.
|
values are specific to YOUR environment.
|
||||||
@@ -40,6 +41,7 @@
|
|||||||
<property name="JDK" value="JDK not set in compilation_tools properties file"/>
|
<property name="JDK" value="JDK not set in compilation_tools properties file"/>
|
||||||
<!-- MSDEV_DIR is a required parameter so set to a message if its not set -->
|
<!-- MSDEV_DIR is a required parameter so set to a message if its not set -->
|
||||||
<property name="MSDEV_DIR" value="MSDEV_DIR not set in compilation_tools properties file"/>
|
<property name="MSDEV_DIR" value="MSDEV_DIR not set in compilation_tools properties file"/>
|
||||||
|
<property name="MSDEV_PLATFORM_DIR" value="MSDEV_PLATFORM_DIR not set in compilation_tools properties file"/>
|
||||||
<echo message="executing with MSDEV_DIR=${MSDEV_DIR}" />
|
<echo message="executing with MSDEV_DIR=${MSDEV_DIR}" />
|
||||||
|
|
||||||
|
|
||||||
@@ -79,22 +81,22 @@
|
|||||||
|
|
||||||
<property name="compiler.x86" value="${MSDEV_DIR}\bin\cl.exe" />
|
<property name="compiler.x86" value="${MSDEV_DIR}\bin\cl.exe" />
|
||||||
<property name="linker.x86" value="${MSDEV_DIR}\bin\link.exe" />
|
<property name="linker.x86" value="${MSDEV_DIR}\bin\link.exe" />
|
||||||
<property name="manifestool.x86" value="${MSDEV_DIR}\bin\mt.exe" />
|
<property name="manifestool.x86" value="${MSDEV_PLATFORM_DIR}\bin\mt.exe" />
|
||||||
<property name="include.x86" value="${MSDEV_DIR}\include" />
|
<property name="include.x86" value="${MSDEV_DIR}\include" />
|
||||||
<property name="include.x86.platformSDK" value="${MSDEV_DIR}\PlatformSDK\Include" />
|
<property name="include.x86.platformSDK" value="${MSDEV_PLATFORM_DIR}\Include" />
|
||||||
<property name="include.x86.atl" value="${MSDEV_DIR}\atlmfc\include" />
|
<property name="include.x86.atl" value="${MSDEV_DIR}\atlmfc\include" />
|
||||||
<property name="library.x86" value="${MSDEV_DIR}\lib" />
|
<property name="library.x86" value="${MSDEV_DIR}\lib" />
|
||||||
<property name="library.x86.platformSDK" value="${MSDEV_DIR}\PlatformSDK\lib" />
|
<property name="library.x86.platformSDK" value="${MSDEV_PLATFORM_DIR}\lib" />
|
||||||
<property name="library.x86.atl" value="${MSDEV_DIR}\atlmfc\lib" />
|
<property name="library.x86.atl" value="${MSDEV_DIR}\atlmfc\lib" />
|
||||||
|
|
||||||
<!-- You have to love the beautiful asymetry of the MS world -->
|
<!-- You have to love the beautiful asymetry of the MS world -->
|
||||||
<!-- The platform SDK comes with 64 bit tools but not 32 bit tools -->
|
<!-- The platform SDK comes with 64 bit tools but not 32 bit tools -->
|
||||||
<property name="compiler.x64" value="${MSDEV_DIR}\bin\x86_amd64\cl.exe" />
|
<property name="compiler.x64" value="${MSDEV_DIR}\bin\x86_amd64\cl.exe" />
|
||||||
<property name="linker.x64" value="${MSDEV_DIR}\bin\x86_amd64\link.exe" />
|
<property name="linker.x64" value="${MSDEV_DIR}\bin\x86_amd64\link.exe" />
|
||||||
<property name="manifesttool.x64" value="${MSDEV_DIR}\bin\x86_amd64\mt.exe" />
|
<property name="manifesttool.x64" value="${MSDEV_PLATFORM_DIR}\bin\x64\mt.exe" />
|
||||||
<property name="include.x64" value="${MSDEV_DIR}\include" />
|
<property name="include.x64" value="${MSDEV_DIR}\include" />
|
||||||
<property name="library.x64" value="${MSDEV_DIR}\lib\amd64" />
|
<property name="library.x64" value="${MSDEV_DIR}\lib\amd64" />
|
||||||
<property name="library.x64.platformSDK" value="${MSDEV_DIR}\PlatformSDK\lib\amd64" />
|
<property name="library.x64.platformSDK" value="${MSDEV_PLATFORM_DIR}\lib\x64" />
|
||||||
<property name="library.x64.atl" value="${MSDEV_DIR}\atlmfc\lib\amd64" />
|
<property name="library.x64.atl" value="${MSDEV_DIR}\atlmfc\lib\amd64" />
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ The main steps for getting a working Jacob build are:
|
|||||||
<h1> Repository Organization </h1>
|
<h1> Repository Organization </h1>
|
||||||
<p>
|
<p>
|
||||||
Unpack the source archive zip file or check the files out of CVS into d:\jacob
|
Unpack the source archive zip file or check the files out of CVS into d:\jacob
|
||||||
or some other familiar place. Source Java and JNI files are located in seperate
|
or some other familiar place. Source Java and JNI files are located in separate
|
||||||
packages from the unit tests and the samples.
|
packages from the unit tests and the samples.
|
||||||
<p>
|
<p>
|
||||||
<ul>
|
<ul>
|
||||||
@@ -33,34 +33,36 @@ The Servlet examples that required j2ee libraries to compile have temporarily
|
|||||||
been removed.
|
been removed.
|
||||||
<p>
|
<p>
|
||||||
<H1>Development Environment</h1>
|
<H1>Development Environment</h1>
|
||||||
The simplest build environment includes MS Visual C++ 8.0 (Studio 2005),
|
The simplest build environment includes MS Visual Studio 10.0 (Studio 2010),
|
||||||
Eclipse 3.3 with the C/C++ module and JDK 1.5.
|
Eclipse 3.3 with the C/C++ module and JDK 1.6.
|
||||||
In that situation, you would just create the <i>compilation_tools.properties</i>
|
In that situation, you would just create the <i>compilation_tools.properties</i>
|
||||||
using the example build.xml as a template.
|
using the example at the top of build.xml as a template.
|
||||||
<UL>
|
<UL>
|
||||||
<li> Microsoft Visual C++ 8.0 and it's included library. (to C:\ProgramFiles in my case)
|
<li> Microsoft Visual Studio 10.0 and it's included library. (to C:\ProgramFiles (X86) in my case)
|
||||||
<li> Eclipse 3.4 or later from www.eclipse.org as the Java IDE.
|
<li> Eclipse 3.4 or later from www.eclipse.org as the Java IDE.
|
||||||
<li> Eclipse 3.4 or later with the C/C++ plugin can be used for C coding in place of VC++ IDE.
|
<li> Eclipse 3.4 or later with the C/C++ plugin can be used for C coding in place of VC++ IDE.
|
||||||
<li> Java JDK 1.5 (1.17 was built using 1.5.0.22)
|
<li> Java JDK 1.6 (1.18 was built using 1.7.0_31)
|
||||||
</ul>
|
</ul>
|
||||||
<p>
|
<p>
|
||||||
<p>
|
<p>
|
||||||
<table>
|
<table>
|
||||||
<TR><TD>Release</TD><TD>C Version</TD><TD>Java Version</TD><TD>ANT Version</TD><TD>Eclipse Version Used</TD><TD>generated DLLs</TD></TR>
|
<TR><TD>Release</TD><TD>C Version</TD><TD>Java Version</TD><TD>ANT Version</TD><TD>Eclipse Version Used</TD><TD>generated DLLs</TD></TR>
|
||||||
<TR><TD>up to 1.6</TD><TD>VC 98 (6.0)</TD><TD>?</TD><td>MAKE</td><TD>?</TD><TD>32 bit</TD></TR>
|
<TR><TD>up to 1.6</TD><TD>VC 98 (6.0)</TD><TD>?</TD><td>MAKE</td><TD>?</TD><TD>32 bit</TD></TR>
|
||||||
<TR><TD>1.7</TD><TD>VC 98 (6.0)</TD><TD>1.4</TD><td>1.?</td><TD>?</TD><TD>32 bit</TD></TR>
|
<TR><TD>1.7</TD><TD>VC 98 (6.0)</TD><TD>1.4 (48)</TD><td>1.?</td><TD>?</TD><TD>32 bit</TD></TR>
|
||||||
<TR><TD>1.8</TD><TD>VC 98 (6.0)</TD><TD>1.4</TD><td>1.?</td><TD>?</TD><TD>32 bit</TD></TR>
|
<TR><TD>1.8</TD><TD>VC 98 (6.0)</TD><TD>1.4 (48)</TD><td>1.?</td><TD>?</TD><TD>32 bit</TD></TR>
|
||||||
<TR><TD>1.9</TD><TD>VC 98 (6.0)</TD><TD>1.4</TD><td>1.?</td><TD>?</TD><TD>32 bit</TD></TR>
|
<TR><TD>1.9</TD><TD>VC 98 (6.0)</TD><TD>1.4 (48)</TD><td>1.?</td><TD>?</TD><TD>32 bit</TD></TR>
|
||||||
<TR><TD>1.10</TD><TD>VC 98 (6.0)</TD><TD>1.4</TD><td>1.?</td><TD>3.??</TD><TD>32 bit</TD></TR>
|
<TR><TD>1.10</TD><TD>VC 98 (6.0)</TD><TD>1.4 (48)</TD><td>1.?</td><TD>3.??</TD><TD>32 bit</TD></TR>
|
||||||
<TR><TD>1.11</TD><TD>VC 98 (6.0) & 2003 64bit libs</TD><TD>1.4.?</TD><td>1.6.?</td><TD>3.2.1</TD><TD>32 and 64 bit</TD></TR>
|
<TR><TD>1.11</TD><TD>VC 98 (6.0) & 2003 64bit libs</TD><TD>1.4.? (48)</TD><td>1.6.?</td><TD>3.2.1</TD><TD>32 and 64 bit</TD></TR>
|
||||||
<TR><TD>1.12</TD><TD>VC 98 (6.0) & 2003 64bit libs</TD><TD>1.4.2</TD><td>1.6.5</td><TD>3.2.2</TD><TD>32 and 64 bit</TD></TR>
|
<TR><TD>1.12</TD><TD>VC 98 (6.0) & 2003 64bit libs</TD><TD>1.4.2 (48)</TD><td>1.6.5</td><TD>3.2.2</TD><TD>32 and 64 bit</TD></TR>
|
||||||
<TR><TD>1.13</TD><TD>VC 2005</TD><TD>1.4.2</TD><TD>1.7.0</TD><TD>3.3</TD><TD>32 and 64 bit</TD></TR>
|
<TR><TD>1.13</TD><TD>VC 2005 (8)</TD><TD>1.4.2 (48)</TD><TD>1.7.0</TD><TD>3.3</TD><TD>32 and 64 bit</TD></TR>
|
||||||
<TR><TD>1.14</TD><TD>VC 2005</TD><TD>1.5.0</TD><TD>1.7.0</TD><TD>3.3</TD><TD>32 and 64 bit</TD></TR>
|
<TR><TD>1.14</TD><TD>VC 2005 (8)</TD><TD>1.5.0 (49)</TD><TD>1.7.0</TD><TD>3.3</TD><TD>32 and 64 bit</TD></TR>
|
||||||
<TR><TD>1.15</TD><TD>VC 2005</TD><TD>1.5.0</TD><TD>1.7.0</TD><TD>3.4</TD><TD>32 and 64 bit</TD></TR>
|
<TR><TD>1.15</TD><TD>VC 2005 (8)</TD><TD>1.5.0 (49)</TD><TD>1.7.0</TD><TD>3.4</TD><TD>32 and 64 bit</TD></TR>
|
||||||
<TR><TD>1.17</TD><TD>VC 2005</TD><TD>1.5.0</TD><TD>1.8.4 Eclipse Embedded</TD><TD>4.3</TD><TD>32 and 64 bit</TD></TR>
|
<TR><TD>1.17</TD><TD>VC 2005 (8)</TD><TD>1.5.0 (49)</TD><TD>1.8.4 Eclipse Embedded</TD><TD>4.3</TD><TD>32 and 64 bit</TD></TR>
|
||||||
|
<TR><TD>1.18</TD><TD>VS 2010 (10) Windows SDK VS2010 (7.0A)</TD><TD>1.6.0 (50)</TD><TD>1.8.4 Eclipse Embedded</TD><TD>4.3</TD><TD>32 and 64 bit</TD></TR>
|
||||||
|
|
||||||
</table>
|
</table>
|
||||||
Microsoft Visual C++ 8.0 supports 64 bit builds. so no additional tools are required.
|
Microsoft Visual Studio 10 supports 64 bit builds. so no additional tools are required.<BR>
|
||||||
|
Microsoft changed the location of the windows sdk (formerly known as platform sdk) after VC 8.0. https://en.wikipedia.org/wiki/Microsoft_Windows_SDK
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
|
|
||||||
@@ -84,7 +86,7 @@ There are two main ant targets.
|
|||||||
<li> create the dll
|
<li> create the dll
|
||||||
<li> create jar file
|
<li> create jar file
|
||||||
</UL>
|
</UL>
|
||||||
<li>"package" runs the above listed steps and then
|
<li>"packageRelease" runs the above listed steps and then
|
||||||
|
|
||||||
<UL>
|
<UL>
|
||||||
<LI>builds the javadoc
|
<LI>builds the javadoc
|
||||||
|
|||||||
@@ -1,6 +1,41 @@
|
|||||||
<HTML>
|
<HTML>
|
||||||
<BODY>
|
<BODY>
|
||||||
|
|
||||||
|
<!-- ---------- -->
|
||||||
|
<h2>JACOB 1.18</h2>
|
||||||
|
<h3>What's New</h3>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
Built with Java 1.6 and Visual Studio 2010
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
<h3>Tracked Changes</h3>
|
||||||
|
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" >
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><b>Bugs</b></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width="13%" valign="top"> </td>
|
||||||
|
<td width="87%" valign="top"> </td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><b>Patches</b></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width="13%" valign="top"> </td>
|
||||||
|
<td width="87%" valign="top"> </td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"><b>Feature Requests</b></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<tr>
|
||||||
|
<td width="13%" valign="top"></td>
|
||||||
|
<td width="87%" valign="top"></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</table>
|
||||||
|
|
||||||
<!-- ---------- -->
|
<!-- ---------- -->
|
||||||
<h2>JACOB 1.17</h2>
|
<h2>JACOB 1.17</h2>
|
||||||
<h3>What's New</h3>
|
<h3>What's New</h3>
|
||||||
|
|||||||
@@ -18,7 +18,6 @@
|
|||||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
*/
|
*/
|
||||||
#include <jni.h>
|
#include <jni.h>
|
||||||
#include <windows.h>
|
|
||||||
#include <objbase.h>
|
#include <objbase.h>
|
||||||
#include <oleauto.h>
|
#include <oleauto.h>
|
||||||
#include <olectl.h>
|
#include <olectl.h>
|
||||||
|
|||||||
@@ -37,7 +37,6 @@
|
|||||||
#define _WIN32_WINNT 0x0500
|
#define _WIN32_WINNT 0x0500
|
||||||
#endif
|
#endif
|
||||||
//#define _ATL_APARTMENT_THREADED
|
//#define _ATL_APARTMENT_THREADED
|
||||||
#include <windows.h>
|
|
||||||
#include <comdef.h>
|
#include <comdef.h>
|
||||||
#include <comutil.h>
|
#include <comutil.h>
|
||||||
#include <atlbase.h>
|
#include <atlbase.h>
|
||||||
|
|||||||
@@ -37,6 +37,8 @@ public class ExcelEventTest extends BaseTestCase {
|
|||||||
typeLibLocation = "C:\\Program Files\\Microsoft Office\\OFFICE11\\EXCEL.EXE";
|
typeLibLocation = "C:\\Program Files\\Microsoft Office\\OFFICE11\\EXCEL.EXE";
|
||||||
// office 2007
|
// office 2007
|
||||||
typeLibLocation = "C:\\Program Files\\Microsoft Office\\OFFICE12\\EXCEL.EXE";
|
typeLibLocation = "C:\\Program Files\\Microsoft Office\\OFFICE12\\EXCEL.EXE";
|
||||||
|
// office 2013 322 bit
|
||||||
|
typeLibLocation = "C:\\Program Files (x86)\\Microsoft Office\\Office14\\EXCEL.EXE";
|
||||||
|
|
||||||
// Grab The Component.
|
// Grab The Component.
|
||||||
ActiveXComponent axc = new ActiveXComponent(excelApplicationProgramId);
|
ActiveXComponent axc = new ActiveXComponent(excelApplicationProgramId);
|
||||||
@@ -50,9 +52,9 @@ public class ExcelEventTest extends BaseTestCase {
|
|||||||
Dispatch workbooks = axc.getPropertyAsComponent("Workbooks");
|
Dispatch workbooks = axc.getPropertyAsComponent("Workbooks");
|
||||||
Dispatch workbook = Dispatch.get(workbooks, "Add").toDispatch();
|
Dispatch workbook = Dispatch.get(workbooks, "Add").toDispatch();
|
||||||
Dispatch sheet = Dispatch.get(workbook, "ActiveSheet").toDispatch();
|
Dispatch sheet = Dispatch.get(workbook, "ActiveSheet").toDispatch();
|
||||||
System.out.println("Workbook: "+workbook);
|
System.out.println("Workbook: " + workbook);
|
||||||
System.out.println("Sheet: "+sheet);
|
System.out.println("Sheet: " + sheet);
|
||||||
if (typeLibLocation.contains("OFFICE11")){
|
if (typeLibLocation.contains("OFFICE11")) {
|
||||||
// office 2007 throws crashes the VM
|
// office 2007 throws crashes the VM
|
||||||
System.out.println("Hooking up sheet listener");
|
System.out.println("Hooking up sheet listener");
|
||||||
hookupListener(sheet, excelSheetProgramId, typeLibLocation);
|
hookupListener(sheet, excelSheetProgramId, typeLibLocation);
|
||||||
@@ -112,7 +114,8 @@ public class ExcelEventTest extends BaseTestCase {
|
|||||||
.println("No exception thrown but no dispatch returned for Excel events");
|
.println("No exception thrown but no dispatch returned for Excel events");
|
||||||
} else {
|
} else {
|
||||||
// Yea!
|
// Yea!
|
||||||
System.out.println("Successfully attached listener to " + programId);
|
System.out
|
||||||
|
.println("Successfully attached listener to " + programId);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -138,6 +141,7 @@ public class ExcelEventTest extends BaseTestCase {
|
|||||||
* Override the invoke method to log all the events so that we don't
|
* Override the invoke method to log all the events so that we don't
|
||||||
* have to implement all of the specific events.
|
* have to implement all of the specific events.
|
||||||
*/
|
*/
|
||||||
|
@Override
|
||||||
public Variant invoke(String methodName, Variant targetParameter[]) {
|
public Variant invoke(String methodName, Variant targetParameter[]) {
|
||||||
System.out.println("Received event from " + listenerPrefix + ": "
|
System.out.println("Received event from " + listenerPrefix + ": "
|
||||||
+ methodName);
|
+ methodName);
|
||||||
|
|||||||
Reference in New Issue
Block a user