【Java App Convert to EXE File】

简介: 【Java App Convert to EXE File】
* ------------------------------------------------------------------------------------
Title:    TestJava.cpp
author: gloomy fish on 2009-09-16
------------------------------------------------------------------------------------ */
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
/* for spawn */
#include <process.h>
/* for str* functions */
#include <string.h>
#include <TCHAR.H>

//-------------------------------------------------------------------------------
int APIENTRY _tWinMain(HINSTANCE hInstance,
                       HINSTANCE hPrevInstance,
                       LPTSTR     lpCmdLine,
                       int       nCmdShow)
{

    // -- check wether application is running now....
    HANDLE hMutex = CreateMutex (NULL,                             // No security descriptor
                            FALSE,                            // Mutex object not owned
                            TEXT("TotallyBogusMutexObjectPlateUtility")); // Object name

      if (NULL == hMutex)
      {
        // Didn't expect this to happen!
         printf("Mutex is null");
        return 1;
      }
      else
      {
        // Not an error -- deal with success
        if ( ERROR_ALREADY_EXISTS == GetLastError() )
        {
          return 0;
        }
      }

      // -- set up classpath & env path to launch
      int ret;
    TCHAR envPath[3072] = "PATH=.;D://JDK6//bin;%path%";
    int anErr = _tputenv(envPath);
    if (anErr != 0) {
        ret = anErr;
        return ret;
    }

   
    char jvmArg[2048];

    // append all necessary jars to set up classpath
    _tcscpy(jvmArg, _T("-cp .//test.jar"));
    // _tcscat(jvmArg, _T(";D://JDK6//lib"));

    // -- your application
    _tcscat(jvmArg, _T(" -Xms256m -Xmx1024m com.swing.ui.Test") );

    // -- can't launch like this......
     #ifdef _DEBUG
         ret = _spawnlp(_P_NOWAIT, "..//..//JDK6//bin//java.exe", "java", jvmArg, NULL);
     #else
         ret = _spawnlp(_P_NOWAIT, "..//..//JDK6//bin//javaw.exe", "java", jvmArg, NULL);
     #endif

     return ret;
}

// winXP, vc++6.0 compile successfully....
 
目录
打赏
0
0
0
0
81
分享
相关文章
|
4月前
|
利用GraalVM将java文件变成exe可执行文件
这篇文章简明地介绍了如何使用GraalVM将一个简单的Java程序编译成exe可执行文件,首先通过javac命令编译Java文件生成class文件,然后使用native-image命令将class文件转换成独立的exe文件,并展示了如何运行这个exe文件。
156 0
利用GraalVM将java文件变成exe可执行文件
Java“class file contains wrong class”解决
当Java程序运行时出现“class file contains wrong class”错误,通常是因为类文件与预期的类名不匹配。解决方法包括:1. 确保类名和文件名一致;2. 清理并重新编译项目;3. 检查包声明是否正确。
85 3
Java 流(Stream)、文件(File)和IO的区别
Java中的流(Stream)、文件(File)和输入/输出(I/O)是处理数据的关键概念。`File`类用于基本文件操作,如创建、删除和检查文件;流则提供了数据读写的抽象机制,适用于文件、内存和网络等多种数据源;I/O涵盖更广泛的输入输出操作,包括文件I/O、网络通信等,并支持异常处理和缓冲等功能。实际开发中,这三者常结合使用,以实现高效的数据处理。例如,`File`用于管理文件路径,`Stream`用于读写数据,I/O则处理复杂的输入输出需求。
330 12
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
如果遇到"exec format error"问题,文章建议先检查Linux操作系统是32位还是64位,并确保安装了与系统匹配的JDK版本。如果系统是64位的,但出现了错误,可能是因为下载了错误的JDK版本。文章提供了一个链接,指向Oracle官网上的JDK 17 Linux版本下载页面,并附有截图说明。
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
【实战揭秘】如何运用Java发布-订阅模式,打造高效响应式天气预报App?
【8月更文挑战第30天】发布-订阅模式是一种消息通信模型,发送者将消息发布到公共队列,接收者自行订阅并处理。此模式降低了对象间的耦合度,使系统更灵活、可扩展。例如,在天气预报应用中,`WeatherEventPublisher` 类作为发布者收集天气数据并通知订阅者(如 `TemperatureDisplay` 和 `HumidityDisplay`),实现组件间的解耦和动态更新。这种方式适用于事件驱动的应用,提高了系统的扩展性和可维护性。
99 2
【Azure Function App】Java Function在运行中遇见内存不足的错误
【Azure Function App】Java Function在运行中遇见内存不足的错误
|
6月前
|
Java应用结构规范问题之在biz层的convert包实现转换的问题如何解决
Java应用结构规范问题之在biz层的convert包实现转换的问题如何解决
|
6月前
|
【Azure Function App】Java Function部署到Azure后出现中文显示乱码问题
【Azure Function App】Java Function部署到Azure后出现中文显示乱码问题
|
6月前
|
【Azure 应用服务】如何查看App Service Java堆栈JVM相关的参数默认配置值?
【Azure 应用服务】如何查看App Service Java堆栈JVM相关的参数默认配置值?
【Azure 应用服务】如何查看App Service Java堆栈JVM相关的参数默认配置值?
【应用服务 App Service】App Service For Windows 如何挂载Storage Account File Share 示例
【应用服务 App Service】App Service For Windows 如何挂载Storage Account File Share 示例

热门文章

最新文章

  • 1
    MNN-LLM App:在手机上离线运行大模型,阿里巴巴开源基于 MNN-LLM 框架开发的手机 AI 助手应用
    310
  • 2
    原生鸿蒙版小艺APP接入DeepSeek-R1,为HarmonyOS应用开发注入新活力
    38
  • 3
    【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
    13
  • 4
    【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
    24
  • 5
    【Azure App Service】基于Linux创建的App Service是否可以主动升级内置的Nginx版本呢?
    6
  • 6
    【Azure Function】Function App出现System.IO.FileNotFoundException异常
    1
  • 7
    【Azure Logic App】使用MySQL 新增行触发器遇见错误 :“Unknown column 'created_at' in 'order clause'”
    3
  • 8
    阿里云APP备案流程图以及备案所需材料整理,跟着教程一步步操作
    10
  • 9
    【07】flutter完成主页-完成底部菜单栏并且做自定义组件-完整短视频仿抖音上下滑动页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
    10
  • 10
    1688APP 原数据 API 接口的开发、应用与收益
    16
  • AI助理

    你好,我是AI助理

    可以解答问题、推荐解决方案等