locate ildasm without PATH

git-svn-id: https://svn.apache.org/repos/asf/incubator/npanday/npanday-its/trunk@1608770 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/test/java/npanday/its/AbstractNPandayIntegrationTestCase.java b/src/test/java/npanday/its/AbstractNPandayIntegrationTestCase.java
index 8656450..7315a2d 100644
--- a/src/test/java/npanday/its/AbstractNPandayIntegrationTestCase.java
+++ b/src/test/java/npanday/its/AbstractNPandayIntegrationTestCase.java
@@ -425,19 +425,29 @@
             }
         }
 
-        String value = null;
-        try
-        {
-            value = execute( "ildasm", new String[]{"/text", assembly} );
-            disasmExec = "ildasm";
+        String value;
+
+        for (String path : new String[] { System.getenv("ProgramFiles"), System.getenv("ProgramFiles(x86)")}) {
+            File[] versions = new File(path, "Microsoft SDKs\\Windows").listFiles();
+            if (versions != null) {
+                for (File f : versions) {
+                    File ildasm = new File(f, "bin\\ildasm.exe");
+                    if (ildasm.exists()) {
+                        disasmExec = ildasm.getAbsolutePath();
+                    }
+                }
+            }
+        }
+        if (disasmExec != null) {
+            value = execute( disasmExec, new String[]{"/text", assembly} );
             disasmArg = "/text";
         }
-        catch ( VerificationException e )
-        {
+        else {
             value = execute( "monodis", new String[]{assembly} );
             disasmExec = "monodis";
             disasmArg = null;
         }
+
         return value;
     }