diff --git a/build.xml b/build.xml index b2755d4..d17ab6f 100644 --- a/build.xml +++ b/build.xml @@ -3,23 +3,24 @@ Ant build file for JACOB. 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 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 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: - JDK=c\:\\Program Files (x86)\\java\\jdk1.5.0_22 - MSDEV_DIR=c\:\\Program Files (x86)\\Microsoft Visual Studio 8\\VC - MSDEV_IDE_DIR=c\:\\Program Files (x86)\\Microsoft Visual Studio 8\\Common7\\IDE - version=1.17-M2 + JDK=c\:\\Program Files (x86)\\java\\jdk1.6.0_31 + MSDEV_DIR=c\:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC + MSDEV_IDE_DIR=c\:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\IDE + 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 values are specific to YOUR environment. @@ -40,6 +41,7 @@ + @@ -79,22 +81,22 @@ - + - + - + - + - + diff --git a/docs/BuildingJacobFromSource.html b/docs/BuildingJacobFromSource.html index efa0c8c..9470f27 100644 --- a/docs/BuildingJacobFromSource.html +++ b/docs/BuildingJacobFromSource.html @@ -14,7 +14,7 @@ The main steps for getting a working Jacob build are:

Repository Organization

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.

    @@ -33,34 +33,36 @@ The Servlet examples that required j2ee libraries to compile have temporarily been removed.

    Development Environment

    -The simplest build environment includes MS Visual C++ 8.0 (Studio 2005), -Eclipse 3.3 with the C/C++ module and JDK 1.5. +The simplest build environment includes MS Visual Studio 10.0 (Studio 2010), +Eclipse 3.3 with the C/C++ module and JDK 1.6. In that situation, you would just create the compilation_tools.properties -using the example build.xml as a template. +using the example at the top of build.xml as a template.
      -
    • Microsoft Visual C++ 8.0 and it's included library. (to C:\ProgramFiles in my case) +
    • Microsoft Visual Studio 10.0 and it's included library. (to C:\ProgramFiles (X86) in my case)
    • Eclipse 3.4 or later from www.eclipse.org as the Java IDE.
    • Eclipse 3.4 or later with the C/C++ plugin can be used for C coding in place of VC++ IDE. -
    • Java JDK 1.5 (1.17 was built using 1.5.0.22) +
    • Java JDK 1.6 (1.18 was built using 1.7.0_31)

    - - - - - - - - - - + + + + + + + + + + +
    ReleaseC VersionJava VersionANT VersionEclipse Version Usedgenerated DLLs
    up to 1.6VC 98 (6.0)?MAKE?32 bit
    1.7VC 98 (6.0)1.41.??32 bit
    1.8VC 98 (6.0)1.41.??32 bit
    1.9VC 98 (6.0)1.41.??32 bit
    1.10VC 98 (6.0)1.41.?3.??32 bit
    1.11VC 98 (6.0) & 2003 64bit libs1.4.?1.6.?3.2.132 and 64 bit
    1.12VC 98 (6.0) & 2003 64bit libs1.4.21.6.53.2.232 and 64 bit
    1.13VC 20051.4.21.7.03.332 and 64 bit
    1.14VC 20051.5.01.7.03.332 and 64 bit
    1.15VC 20051.5.01.7.03.432 and 64 bit
    1.17VC 20051.5.01.8.4 Eclipse Embedded4.332 and 64 bit
    1.7VC 98 (6.0)1.4 (48)1.??32 bit
    1.8VC 98 (6.0)1.4 (48)1.??32 bit
    1.9VC 98 (6.0)1.4 (48)1.??32 bit
    1.10VC 98 (6.0)1.4 (48)1.?3.??32 bit
    1.11VC 98 (6.0) & 2003 64bit libs1.4.? (48)1.6.?3.2.132 and 64 bit
    1.12VC 98 (6.0) & 2003 64bit libs1.4.2 (48)1.6.53.2.232 and 64 bit
    1.13VC 2005 (8)1.4.2 (48)1.7.03.332 and 64 bit
    1.14VC 2005 (8)1.5.0 (49)1.7.03.332 and 64 bit
    1.15VC 2005 (8)1.5.0 (49)1.7.03.432 and 64 bit
    1.17VC 2005 (8)1.5.0 (49)1.8.4 Eclipse Embedded4.332 and 64 bit
    1.18VS 2010 (10) Windows SDK VS2010 (7.0A)1.6.0 (50)1.8.4 Eclipse Embedded4.332 and 64 bit
    -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.
    +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

    @@ -84,7 +86,7 @@ There are two main ant targets.

  • create the dll
  • create jar file
-
  • "package" runs the above listed steps and then +
  • "packageRelease" runs the above listed steps and then
    • builds the javadoc diff --git a/docs/ReleaseNotes.html b/docs/ReleaseNotes.html index fee5651..fce25d6 100644 --- a/docs/ReleaseNotes.html +++ b/docs/ReleaseNotes.html @@ -1,6 +1,41 @@ + +

      JACOB 1.18

      +

      What's New

      +
        +
      • + Built with Java 1.6 and Visual Studio 2010 +
      • +
      +

      Tracked Changes

      + + + + + + + + + + + + + + + + + + + + + + + + +
      Bugs
        
      Patches
        
      Feature Requests
      +

      JACOB 1.17

      What's New

      diff --git a/jni/EventProxy.h b/jni/EventProxy.h index fb02ed3..060cd24 100644 --- a/jni/EventProxy.h +++ b/jni/EventProxy.h @@ -18,7 +18,6 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ #include -#include #include #include #include diff --git a/jni/StdAfx.h b/jni/StdAfx.h index e0f8c22..b13f53c 100644 --- a/jni/StdAfx.h +++ b/jni/StdAfx.h @@ -37,7 +37,6 @@ #define _WIN32_WINNT 0x0500 #endif //#define _ATL_APARTMENT_THREADED -#include #include #include #include diff --git a/unittest/com/jacob/test/events/ExcelEventTest.java b/unittest/com/jacob/test/events/ExcelEventTest.java index 9ec1fee..348fd5b 100644 --- a/unittest/com/jacob/test/events/ExcelEventTest.java +++ b/unittest/com/jacob/test/events/ExcelEventTest.java @@ -37,6 +37,8 @@ public class ExcelEventTest extends BaseTestCase { typeLibLocation = "C:\\Program Files\\Microsoft Office\\OFFICE11\\EXCEL.EXE"; // office 2007 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. ActiveXComponent axc = new ActiveXComponent(excelApplicationProgramId); @@ -50,9 +52,9 @@ public class ExcelEventTest extends BaseTestCase { Dispatch workbooks = axc.getPropertyAsComponent("Workbooks"); Dispatch workbook = Dispatch.get(workbooks, "Add").toDispatch(); Dispatch sheet = Dispatch.get(workbook, "ActiveSheet").toDispatch(); - System.out.println("Workbook: "+workbook); - System.out.println("Sheet: "+sheet); - if (typeLibLocation.contains("OFFICE11")){ + System.out.println("Workbook: " + workbook); + System.out.println("Sheet: " + sheet); + if (typeLibLocation.contains("OFFICE11")) { // office 2007 throws crashes the VM System.out.println("Hooking up sheet listener"); hookupListener(sheet, excelSheetProgramId, typeLibLocation); @@ -112,7 +114,8 @@ public class ExcelEventTest extends BaseTestCase { .println("No exception thrown but no dispatch returned for Excel events"); } else { // 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 * have to implement all of the specific events. */ + @Override public Variant invoke(String methodName, Variant targetParameter[]) { System.out.println("Received event from " + listenerPrefix + ": " + methodName);