public Process startIKVMShell(DataReceivedEventHandler dataReceivedCallBack)
        {
            var IKVMShell = new JavaShell(ikvm);

            IKVMShell.startJavaShell(dataReceivedCallBack, "");
            return(IKVMShell.IKVMProcess);
        }
 // if we pass a callback for logging we need to start a IKVM shell
 public Process executeJavaFile(string fileToExecute, DataReceivedEventHandler dataReceivedCallBack)
 {            
     var IKVMShell = new JavaShell(ikvm);
     IKVMShell.compileJavaFile(fileToExecute);
     IKVMShell.executeClassFile(dataReceivedCallBack);
     //IKVMShell.startJavaShell(dataReceivedCallBack, fileToExecute);
     return IKVMShell.IKVMProcess;            
 }
        // if we pass a callback for logging we need to start a IKVM shell
        public Process executeJavaFile(string fileToExecute, DataReceivedEventHandler dataReceivedCallBack)
        {
            var IKVMShell = new JavaShell(ikvm);

            IKVMShell.compileJavaFile(fileToExecute);
            IKVMShell.executeClassFile(dataReceivedCallBack);
            //IKVMShell.startJavaShell(dataReceivedCallBack, fileToExecute);
            return(IKVMShell.IKVMProcess);
        }
 public Process startIKVMShell(DataReceivedEventHandler dataReceivedCallBack)
 {
     var IKVMShell = new JavaShell(ikvm);
     IKVMShell.startJavaShell(dataReceivedCallBack,"");
     return IKVMShell.IKVMProcess;            
 }