導航:首頁 > 軟體知識 > 如何讓程序按指定尺寸運行

如何讓程序按指定尺寸運行

發布時間:2023-02-09 10:24:09

A. 如何單獨讓一個程序以1024*768解析度運行

臨時切換解析度的小工具:reso

reso的作用:能夠以特定的解析度、顏色模式和刷新率來啟動一個程序,而且你可以把要用reso啟動的項目做成一個快捷方式,以後只要點擊該快捷方式就可以以reso啟動它了。在你關閉該程序的時候,顯示模式也會切換成原來的。這比起在系統里自己調整要方便不少。

有時我們玩游戲,尤其是一些解析度不怎麼高的游戲,在高解析度下窗口太小,切換成全屏又太粗糙,而且不能同時查看攻略和做其他的事,這時就用reso在較低的解析度下試試吧。

自動會在桌面上生成一個指定解析度下的快捷圖標的,一點就行了,很方便

B. 怎麼讓特定的軟體以特定縮放運行

右擊,選擇打開方式,選擇A,然後選擇下面的始終使用選擇的程序打開

C. 如何將C/C++程序編譯到指定的大小如編譯成100KB大小

要在java中調用c語言的庫,需要使用Java提供了JNI。

舉例說明

在c語言中定義一個 void sayHello()函數(列印Hello World);然後在Java中調用這個函數顯示Hello Word.

現在分別從Java和C語言兩部分說明:

1. Java 部分

首先定義一個HelloNative,在其中申明sayHello函數,函數要申明為Native 類型的.如下:

public class HelloNative {

public native void sayHello();

}

編譯這個類,生成class文件:

javac HelloWorld.java

利用javah生成需要的h文件

javah HelloNative

生成的 h文件大概如下:

/* DO NOT EDIT THIS FILE - it is machine generated */

#include <jni.h>

/* Header for class HelloNative */

#ifndef _Included_HelloNative

#define _Included_HelloNative

#ifdef __cplusplus

extern "C" {

#endif

/*

* Class: HelloNative

* Method: sayHello

* Signature: ()V

*/

JNIEXPORT void JNICALL Java_HelloNative_sayHello

(JNIEnv *, jobject);

#ifdef __cplusplus

}

#endif

#endif

可以看一下上面自動生成的程序,程序include了jni.h,這個頭文件在 $JAVA_HOME下的include文件夾下. 還可以發現生成的函數名是在之前的函數名前面加上了Java_HelloNative。

2. C語言部分

根據上面生成的h文件編寫相應的代碼實現,建立一個 HelloNative.cpp用來實現顯示Hello World的函數.如下:

#include <stdio.h>

#include "HelloNative.h"

JNIEXPORT void JNICALL Java_HelloNative_sayHello(JNIEnv *, jobject)

{

printf("Hello World!\n");

}

代碼編寫完成之後,我們再用gcc編譯成庫文件,命令如下;

gcc -fPIC -I/usr/lib/jvm/java-7-openjdk-i386/include -I/usr/lib/jvm/java-7-openjdk-i386/include/linux -shared -o libHelloNative.so HelloNative.cpp

這樣就會在當前目錄下生成一個libHelloNative.so的庫文件.這時需要的庫已經生成,在C語言下的工作已經完成了.

接下來需要在Java中編寫一個程序測試一下.在程序前,需要將我們的庫載入進去.載入的方法是調用Java的 System.loadLibrary("HelloNative");

public class TestNative

{

static {

try {

System.loadLibrary("HelloNative");

}

catch(UnsatisfiedLinkError e) {

System.out.println( "Cannot load hello library:\n " + e.toString() );

}

}

public static void main(String[] args) {

HelloNative test = new HelloNative();

test.sayHello();

}

}

但是再編譯後,運行的時候,問題又出現了.

Cannot load hello library:

java.lang.UnsatisfiedLinkError: no HelloNative in java.library.path

Exception in thread "main" java.lang.UnsatisfiedLinkError: HelloNative.sayHello()V

at HelloNative.sayHello(Native Method)

at TestNative.main(TestNative.java:13)

載入庫失敗,但是庫明明就是放在當前文件夾下的,怎麼會載入失敗呢?

用System.getProperty("java.library.path")查看,發現java.library.path中並不u存在當前的目錄.主要有以下的幾個解決辦法:

1) 將生成的庫復制到java.library.path有的路徑中去,當然這樣不是很好

2) 設置環境變數export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH ,將當前的目錄加入到LD_LIBRARY_PATH中

3) 設置java 的選項,將當前的目錄加入到其中 .java -Djava.library.path=. $LD_LIBRARY_PATH

這樣之後程序就能夠成功的運行了.可以看見顯示的"Hello World!"了

閱讀全文

與如何讓程序按指定尺寸運行相關的資料

熱點內容
成功的交易系統應具備哪些要素 瀏覽:333
永泰有什麼農產品 瀏覽:109
sqlite如何打開資料庫 瀏覽:290
英雄聯盟的登陸程序是哪個 瀏覽:534
廣州外貿服裝批發市場在哪裡 瀏覽:349
手機信息裡面的字如何調大細 瀏覽:720
舜天華為代理怎麼樣 瀏覽:977
支付平台代理怎麼做 瀏覽:290
淘寶上做虛擬產品怎麼發貨 瀏覽:753
mvp方法產品的需求來源有哪些 瀏覽:655
成都電力技術學院怎麼去讀 瀏覽:412
股市交易怎麼查詢歷史 瀏覽:619
大數據類培訓有哪些 瀏覽:902
外賣小程序起什麼名稱好 瀏覽:807
澳洲有哪些好工業產品 瀏覽:120
好孝心的產品都有哪些 瀏覽:571
普雲交易怎麼給子賬號用 瀏覽:612
湘鄉市水果批發市場在哪個地方 瀏覽:512
數據挖掘論文怎麼寫 瀏覽:117
產品經理面試注意哪些 瀏覽:928