1.JAR和JAD是掌上掌上什么格式?电子书能看吗?需要解压吗?
2.C++教程:俄罗斯方块源码+注释+解答
3.掌上游戏机有些什么游戏 dc游戏机经典游戏
4.掌上看家采集端怎么才能不被监测?
5.开源掌机的开源是什么意思
JAR和JAD是什么格式?电子书能看吗?需要解压吗?
介绍
JAR(Java Archive,Java 归档文件)是源码与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。代码为 J2EE 应用程序创建的掌上掌上 JAR 文件是 EAR 文件(企业 JAR 文件)。
JAR 文件格式以流行的源码 ZIP 文件格式为基础。
与 ZIP 文件不同的代码追书 源码是,JAR 文件不仅用于压缩和发布,掌上掌上而且还用于部署和封装库、源码组件和插件程序,代码并可被像编译器和 JVM 这样的掌上掌上工具直接使用。在 JAR 中包含特殊的源码文件,如 manifests 和部署描述符,代码用来指示工具如何处理特定的掌上掌上 JAR。
一个 JAR 文件可以用于
□ 用于发布和使用类库
□ 作为应用程序和扩展的源码构建单元
□ 作为组件、applet 或者插件程序的代码部署单位
□ 用于打包与组件相关联的辅助资源
JAR 文件格式提供了许多优势和功能,其中很多是传统的压缩格式如 ZIP 或者 TAR 所没有提供的。
它们包括:
·安全性。
可以对 JAR 文件内容加上数字化签名。这样,能够识别签名的工具就可以有选择地为您授予软件安全特权,这是其他文件做不到的,它还可以检测代码是否被篡改过。
·减少下载时间。
如果一个 applet 捆绑到一个 JAR 文件中,那么浏览器就可以在一个 HTTP 事务中下载这个 applet 的类文件和相关的资源,而不是对每一个文件打开一个新连接。
·压缩。
JAR 格式允许您压缩文件以提高存储效率。
·传输平台扩展。
Java 扩展框架(Java Extensions Framework)提供了向 Java 核心平台添加功能的方法,这些扩展是tomcat源码核心用 JAR 文件打包的(Java 3D 和 JavaMail 就是由 Sun 开发的扩展例子)。
·包密封。
存储在 JAR 文件中的包可以选择进行密封,以增强版本一致性和安全性。密封一个包意味着包中的所有类都必须在同一 JAR 文件中找到。
·包版本控制。
一个 JAR 文件可以包含有关它所包含的文件的数据,如厂商和版本信息。
·可移植性。
处理 JAR 文件的机制是 Java 平台核心 API 的标准部分。
[编辑本段]JAR在手机电子书的应用
JAVA手机电子书的格式一般为JAR和JAD,其中JAD文件是一个说明文件,描述jar文件的信息。
部分手机不支持直接读取JAR(这是手机安全策略引起的),这时则需要JAD文件。这样的手机只在少数。java运行在java虚拟机之上,也就是JVM,而很多低端机型也可以支持java,因此就注定了java格式的适用范围相当广泛。由于java可以提供丰富的交互行为,因此在支持图文,多媒体方面做的最为优秀,另外,阅读器和文本被打包在一起(jar),因此只需安装即可阅读,无需另外安装阅读器或者下载电子书。
手机和以前的电子书阅读设备相比,其最大优势就是方便,能随身携带。而其不足之处就是Clion阅读源码屏幕阅读限制,以及可阅读资源少。目前的手机设计,呈现大小两极分化的局面,一种趋势是越来越小,走灵巧、精致之路,另一种趋势则是越来越大,走功能丰富与完善之路,向PDA靠拢,无疑只有这种趋势才适合手机电子书的发展。
而对目前大部分用户而言,以每屏显示几行的手机来阅读上万字的电子书,仍然有很大的不便。
目前能制作电子书的软件有掌上书院开发的mBookMaker等,想将自己的文字转换为电子书的朋友不妨一试。
由于不同品牌的手机硬软件不同,并非所有的手机都能支持手机电子书。
相对而言,诺基亚,摩托罗拉等品牌手机,只要能支持JAVA,那就一定有适合的电子书。
但也有一些已经非常优秀的JAR读书软件,可以直接读取TXT。HTML。UMD等格式的小说。例如Anyview3。0就是非常不错的手机电子书软件
制作手机电子书需要一定的耐心,如果你没有耐心,也可以直接去一些提供已经做好的cms源码分享手机电子书下载的网站:
[编辑本段]常见的 jar 工具用法
jar cf jar-file input-file。
。。
用一个单独的文件创建一个 JAR 文件
jar cf jar-file dir-name
用一个目录创建一个 JAR 文件
jar cf0 jar-file dir-name
创建一个未压缩的 JAR 文件
jar uf jar-file input-file。
。。
更新一个 JAR 文件
jar tf jar-file
查看一个 JAR 文件的内容
jar xf jar-file
提取一个 JAR 文件的内容
jar xf jar-file archived-file。
。。
从一个 JAR 文件中提取特定的文件
java -jar app。jar
运行一个打包为可执行 JAR 文件的应用程序
JAD(应用程序开发联系会议)
召开应用程序开发联系会议 应用程序开发联系( J A D)会议是范围广的、简便的专题讨论会( w o r k s h o p),也是分析人员与客户代表之间一种很好的合作办法,并能由此拟出需求文档的底稿。
该会议通过紧密而集中的讨论得以将客户与开发人员间的合作伙伴关系付诸于实践( Wood and Silver )。
出自《软件需求》第三章-》需求获取
Java 应用程序描述符 (JAD)
JAD 文件包含 MIDlet 套件的标题信息,例如开发应用程序的公司、应用程序名称和大小。
在将应用程序下载到设备上时,将先下载和读取描述符,然后再下载和读取包含 MIDP 应用程序的 JAR 文件。在装入 MIDlet 套件的完整 JAR 文件之前,移动设备上的应用程序管理软件可使用 JAD 文件验证 MIDlet 是否适用于该设备。
JAD 还向 MIDlet 提供特定于配置的属性(参数),而无需修改 JAR 文件。这样设备便可以确认是否具有足够的空间用于存放应用程序,以及是否应下载完整的应用程序。
Java 文件的扩展名为 。jad。
JAD是软件配置信息文件,JAR才是eventbus源码讲解真正的程序,你可以把两个文件放在一起安装JAD,也可以直接安装JAR文件。
JAD 文件为纯文本格式,可用记事本打开。一个 JAD 文件至少需要包含包含如下属性:
MIDlet-Name。向用户标识 MIDlet 的 MIDlet 套件名称。
MIDlet-Version。MIDlet 套件的版本号。
应用程序管理软件使用该版本号执行安装操作和升级,以及与用户进行通信。
MIDlet-Vendor。 提供 MIDlet 套件的组织。
根据项目配置所支持的 MIDP 版本,还可以使用其他属性:
MIDlet-JAR-URL。
此 MIDlet 套件的 JAR 文件的位置和名称。
MIDlet-JAR-Size。通过此 MIDlet 套件生成的 JAR 文件的大小。每次生成 JAR 文件后,都会更新此只读属性。
MicroEdition-Profile。
所需的 Java ME 配置文件,它使用与系统属性 files 相同的格式和值(例如 MIDP-1。0)。
MicroEdition-Configuration。 所需的 Java ME 配置,它使用与系统属性 nfiguration 相同的格式和值(例如 CLDC-1。
0)。
MIDlet-Description。MIDlet 套件的描述。
MIDlet-Icon。JAR 文件内的 PNG 文件名,用于表示 MIDlet 套件。应用程序管理软件显示了标识此套件的图标。
MIDlet-Info-URL。
一个 URL,提供进一步描述 MIDlet 套件的信息。
MIDlet-Data-Size。MIDlet 所需的持久性数据的最少字节数。设备可以根据其自身的策略提供额外的存储。
此外,JAD还是一个简单易用的反编译工具,可以将二进制字节码文件转换成java源文件。
在众多的JAVA反编译工具中,有几种非常著名的工具使用了相同的核心引擎——JAD,其中主要包括:Front End Plus、mDeJava、Decafe Pro、Cavaj Java Decompiler、DJ Java Decompiler、NMI’s Java Class Viewer和国产的JAVA源代码反编译专家等等。
JAD本身是一个命令行工具,没有图形界面,上述的这些工具大多是在JAD内核的基础之上加了一个图形界面而已。这么多种产品的共同选择,足可证明JAD在JAVA反编译领域中的尊贵地位。
一、基本用法
Usage:jad [option(s)]
直接输入类文件名,且支持通配符,如下所示。
c:\Java\>jad ass
c:\Java\>jad *。class
结果是将 ass反编译为example1。jad。将example1。jad改为example1。Java即得源文件。
二、Option -o
不提示,覆盖源文件
三、Option -s
c:\Java\>jad -sJava ass
反编译结果以。
Java为扩展名。
四、Option -p
将反编译结果输出到屏幕
c:\Java\>jad -p ass
将反编译结果重定向到文件
c:\Java\>jad -p ass>example1。Java
五、Option -d
指定反编译的输出文件目录
c:\Java\>jad -o -dtest -sJava *。
class
C++教程:俄罗斯方块源码+注释+解答
俄罗斯方块(Tetris,俄文:Тетрис)是一款电视游戏机和掌上游戏机游戏,它由俄罗斯人阿列克谢·帕基特诺夫发明,故得此名。
顾名思义,俄罗斯方块自然是俄罗斯人发明的。这人叫阿列克谢·帕基特诺夫(Алексей Пажитнов 英文:Alexey Pazhitnov)。俄罗斯方块原名是俄语Тетрис(英语是Tetris),这个名字来源于希腊语tetra,意思是"四",而游戏的作者最喜欢网球(tennis)。于是,他把两个词tetra和tennis合而为一,命名为Tetris,这也就是俄罗斯方块名字的由来。
俄罗斯方块源码
#include
#include
#include
/*#define SUSHU
oid ab(int *b, int *c){
int p = *b;
*b = *c; //c = b = b = p =
*c = p;
}
*/
#include
char LEETER[4][5][5] = {
{
0, 1, 0, 0, 0, //表示字母L
0, 1, 0, 0, 0,
0, 1, 0, 0, 0,
0, 1, 0, 0, 0,
0, 1, 1, 1, 0
}, {
0, 0, 1, 0, 0, //表示字母O
0, 1, 0, 1, 0,
0, 1, 0, 1, 0,
0, 1, 0, 1, 0,
0, 0, 1, 0, 0
}, {
0, 1, 0, 1, 0, //表示字母V
0, 1, 0, 1, 0,
0, 1, 0, 1, 0,
0, 1, 0, 1, 0,
0, 0, 1, 0, 0
}, {
0, 1, 1, 1, 0, //表示字母E
0, 1, 0, 0, 0,
0, 1, 1, 1, 0,
0, 1, 0, 0, 0,
0, 1, 1, 1, 0
}
};
int status = 1; //控制线程函数的运行状态
int speed = ; //控制字符变换的速度
HANDLE hout; //控制台标准输出的句柄
CONSOLE_SCREEN_BUFFER_INFO csbi; //控制台屏幕缓冲区信息结构体
char *symbol[] = { "☆", "★", "●", "◆", "▲", "■", "□" }; //字母符号☆mm
WORD attrbute[] = {
FOREGROUND_RED | FOREGROUND_INTENSITY, //红色
FOREGROUND_BLUE | FOREGROUND_INTENSITY, //蓝色
FOREGROUND_GREEN | FOREGROUND_INTENSITY //绿色
};
void drawLetter()
{
int i, j, c;
COORD pos; //光标的坐标
DWORD len; //实际填充字符属性的个数
for (c = 0; c < sizeof LEETER / sizeof LEETER[0]; ++c)
{
for (i = 0; i < 5; ++i)
{
pos.X = c * 5 * 2;
pos.Y = i;
SetConsoleCursorPosition(hout, pos);
for (j = 0; j < 5; ++j)
{
if (LEETER[c][i][j])
{
GetConsoleScreenBufferInfo(hout, &csbi);
printf("%s", symbol[rand() % (sizeof symbol / sizeof symbol[0])]);
FillConsoleOutputAttribute(hout,
attrbute[rand() % (sizeof attrbute / sizeof attrbute[0])],
2, csbi.dwCursorPosition, &len);
}
else
{
printf(" "); //两个空格
}
}
}
}
}
DWORD WINAPI ThreadProc(LPVOID lpParam) //线程处理函数
{
while (1)
{
if (status)
{
drawLetter(); //画字符
Sleep(speed);
}
}
return 0;
}
int main()
{
int ctrl; //控制游戏
hout = GetStdHandle(STD_OUTPUT_HANDLE);
HANDLE hThread; //线程句柄
srand((unsigned)time(0)); //初始化随机种子
hThread = CreateThread(NULL, 0, ThreadProc, NULL, 0, NULL);
CloseHandle(hThread);
while (1)
{
ctrl = _getch();
if (ctrl == 'q')
break;
else if (ctrl == 'w')
{
if (speed < )
speed += ;
}
else if (ctrl == 's')
{
if (speed > )
speed -= ;
}
else if (ctrl == 'p')
status = 0;
else if (ctrl == 'c')
status = 1;
}
return 0;
本文摘自: cdtedu.com/c/course/...,如有侵权,请联系我!
掌上游戏机有些什么游戏 dc游戏机经典游戏
游戏机是什么意思?游戏机是一种主要用于娱乐,使用只向获得许可的软件开发者开放的源代码,以电视机或其他专用显示器以及专用输入设备的电脑系统。其与PC机最大的区别在于源代码和软件的封闭性。根据游戏机世界网的广义定义,人类用来进行游戏的机械电子装置都可称作游戏机随着电子技术信息产业的长发展以及**漫画产业的带动,电子游戏机便成为了游戏机的实际代表,由于其更专业化的游戏性表现,因此即便电脑水平如此发达的今天,PC游戏仍然无法替代游戏机的强势地位。
掌上游戏机有些什么游戏?
就见最经典的给你说吧。
PSp:怪物猎人系列 极度推荐 最终幻想核心危机 最终幻想纷争 最终幻想狮子战争 DJMAX系列 寄生前夜 天诛 梦幻之星P系列 战神系列
NDS:个人并不是特别了解 女友在玩模拟器 逆转裁判 幽灵欺诈 马里奥系类 恩还有任天堂的各种游戏 宠物小精灵。
psp上的动作游戏其实比较多。。。psp玩多了有两个趋势一个是当大号mp4用 还有就是玩怪物猎人。
NDS上的解密类的蛮有意思的
顺便说一下 这两款掌机都已经是末期了。。。个人的话还是推荐等一等。。psp2 快出了。。。3ds已经出了
switch买整机好还是买整机和游戏?
Switch买整机和游戏好。
Switch游戏机购买后是不含游戏的,游戏需要单独付费购买,所以购买游戏机的同时必须购买游戏,不然买回来也只能放置等待落灰。在挑选Switch版本时建议直接购买续航版,然后挑选一款适合自己的游戏,玩家需要多看看攻略保证不会使用一次就闲置。
十大游戏机顶盒推荐?
答:十大游戏机顶盒推荐如下
1、荣耀/HONOR
2、天猫魔盒
3、创维/SKYWORTH
4、海美迪/HIMEDIA
5、华为/HUAWEI
6、迪优美特
7、开博尔/Kaiboer
8、当贝
9、灵云
、杰科/Giec
dc游戏机经典游戏?
《索尼克力量》,我一直玩到今天,爱不释手。
这个游戏的节奏非常快,怎么说呢,就像世嘉的优质街机游戏一样,给玩家意犹未尽的喜悦感。自从《索尼克力量》更新超级索尼克的DLC之后,就像变成了一个新游戏似的。
不过很可惜的是,《索尼克力量》在大多数玩家眼里评价不是很高,远不如怀旧复古作品《索尼克狂热》。客观来说,《索尼克狂热》在制作思路上明显更高超,它是索尼克粉丝与世嘉联手制作的。
掌上看家采集端怎么才能不被监测?
Windows系统可以用一个cpp程序解决
源码
#include <iostream>
#include <windows.h>
#include <tlhelp.h>
#include <stdio.h>
typedef DWORD (CALLBACK* NTTERMINATEPROCESS)(HANDLE,UINT);
NTTERMINATEPROCESS NtTerminateProcess;
BOOL SetPrivilege(HANDLE hToken,LPCTSTR lpszPrivilege,BOOL bEnablePrivilege)
{
BOOL bRet = FALSE;
LUID luid;
TOKEN_PRIVILEGES tp;
bRet = LookupPrivilegeValue(NULL,lpszPrivilege,&luid);
if(!bRet)
return bRet;
tp.PrivilegeCount = 1;
if(bEnablePrivilege)
tp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
else
tp.Privileges[0].Attributes = NULL;
bRet = AdjustTokenPrivileges(hToken,
FALSE,
&tp,
sizeof(TOKEN_PRIVILEGES),
(PTOKEN_PRIVILEGES)NULL,
(PDWORD)NULL);
if(!bRet)
return bRet;
return TRUE;
}
BOOL KillProcess(DWORD PID)
{
HANDLE hProcess = NULL;
HANDLE hToken = NULL;
BOOL bKilled = FALSE;
BOOL bRet = FALSE;
bRet = OpenProcessToken(GetCurrentProcess(),TOKEN_ALL_ACCESS,&hToken);
if(!bRet)
return bRet;
bRet = SetPrivilege(hToken,SE_DEBUG_NAME,TRUE);
if(!bRet)
return bRet;
hProcess = OpenProcess(PROCESS_ALL_ACCESS,FALSE,PID);
if(!hProcess)
return bRet;
bRet = NtTerminateProcess(hProcess,1);
if(!bRet)
return bRet;
bKilled = TRUE;
CloseHandle(hToken);
CloseHandle(hProcess);
return bKilled;
}
void killman(char *ProcessName)
{
HANDLE hProcess=CreateToolhelpSnapshot(THCS_SNAPPROCESS,0);
HANDLE hModule;
PROCESSENTRY pinfo;
MODULEENTRY minfo;
char shortpath[];
pinfo.dwSize = sizeof( PROCESSENTRY );
BOOL report =ProcessFirst(hProcess,&pinfo);
while(report)
{
hModule=CreateToolhelpSnapshot(THCS_SNAPMODULE,pinfo.thProcessID);
ModuleFirst(hModule, &minfo);
GetShortPathName(minfo.szExePath,shortpath,);
if(!(strcmp(pinfo.szExeFile,ProcessName)))
{
hProcess = OpenProcess( PROCESS_ALL_ACCESS, FALSE, pinfo.thProcessID );
//NtTerminateProcess(hProcess,NULL);
KillProcess(pinfo.thProcessID);
}
// AfxMessageBox(pinfo.szExeFile);
report =ProcessNext(hProcess, &pinfo);
}
}
int main(int argc, char **argv)
{
HMODULE hNtdll = NULL;
hNtdll = LoadLibrary( "ntdll.dll" );
if ( !hNtdll )
{
printf( "LoadLibrary( NTDLL.DLL ) Error:%d\n", GetLastError() );
return false;
}
NtTerminateProcess = (NTTERMINATEPROCESS)
GetProcAddress( hNtdll, "NtTerminateProcess");
for(;;){
killman("AvsLoader.exe");
killman("AtHomeVideoStreamer.exe");
}
return 0;
}
c++编译运行就可以了
也可以加到开机启动项里
开源掌机的开源是什么意思
开源掌机的开源意思是:开放源代码,即掌机的源代码对外公开,人们可以自由地进行修改和再发布,而不需要得到开发商的授权。
这样可以促进掌机行业的发展和创新,使得更多的开发者可以为掌机开发出更多有趣的游戏和应用程序。开源掌机是指使用开放源代码的掌上游戏机,它们通常具有自己的独特特性和功能,并且可以通过模拟器运行各种游戏和应用程序。这些掌机通常由掌机制造商自行开发和销售,而不是由游戏开发商或第三方厂商提供。与闭源掌机相比,开源掌机的优势在于它们可以吸引更多的开发者为其开发各种游戏和应用程序,从而提高掌机的质量和多样性。
此外,开源掌机还可以促进掌机行业的发展和创新,使得掌机制造商可以更好地满足用户的需求和期望。总之,开源掌机的开源意味着掌机的源代码是公开的,可以被自由地修改和再发布,这有助于推动掌机行业的发展和创新,同时也为用户提供了更多的选择和可能性。