转自:http://www.uuapp.com/read.php?tid=141
paUlp7x u3p其实是一个zip压缩档,更名成zip扩展名后用winrar开启后会依据程序不同发现如下目录结构,
#Y3:~dmJ-
"p43# data/
JJHr<|K device/
pu(a&0 Host/
C3n_'O manifest/
:"+/M{qz
P@ewr} 其 中Host/是程序执行文件所在的位置并放置相关的dll档案,manifest/目录里有两个档案,manifest.u3i跟xxxxxx.ico, manifest.u3i是用xml语法来描述程序版本,厂商,执行路径等等,xxxxxx.ico是出现在u3选单里的图示,
re9*q
L&wJ-}'l 一个manifest.u3i范例
N;cEf7+f
*Mf; <u3manifest version="1.0">
`=A*ei5 <application uuid="12345678-1234-1234-1234-123456789abc" version="x.x.x.x">
(?SK< 4! <icon>xxxxxx.ico</icon>
E DuLgg@ <name>xxxxxx xxxxxx</name>
<vendor url=" http://www.xxxxxx.com/ 7� jq?zS| ">xxxxxx</vendor>
UUy%:t <description> [U3 build by Eure.ca]</description>
mQmn�&:R <opti>
iB[>uW <minFreeSpace>x.0</minFreeSpace>
Mq-QWx"P </opti>
f,�9jK9/$ <i18n></i18n>
]M AB </application>
:[:5^R <acti>
Bq~!_6fB <appStart cmd="%U3_HOST_EXEC_PATH%\xxxxxx.exe"></appStart>
aEr<(x!|" <appStop cmd="%U3_HOST_EXEC_PATH%\appstop.exe"> -t -s xxxxxx</appStop>
'N$hbl� <hostCleanUp cmd="%U3_HOST_EXEC_PATH%\appstop.exe"> -t -s xxxxxx</hostCleanUp>
*Dr�-{\9 </acti>
NpV#zzE </u3manifest>
DSG�tt/n
$0WO 4C%M 以下说明几个标签意义,略过没提有兴趣的,请自行寻找相关数据.
?>b>LDpx? uuid是一组用来识别特定事物的16进位号码,通常是用Microsoft的GUID来实作,这组号码是唯一的,是用来程序.在manifest\目录放好icon文件,<icon>卷标指定好该程序的icon文件名,u3选单会自己抓到路径并显示图标.
4\'1j|nS[
yl|?+ < vender>卷标说明软件厂商,url是其内可设定的属性值,<description>卷标则是叙述说明,可填可不填.最重要的卷 标是<acti>里面的子元素卷标,<appStart>是用来说明程序执行的所在路径,这里一定要对,否则程序就不能执行, <appStop>及<hostCleanup>则是当按下随身碟u3选单里的"Eject"时,u3会结束还在执行中的程序, 以便安全地退出.
A4RA5N/}
40TS=evG PS:但有些自己制作的软件,可能不能完全退出,会产生错误讯息.
%lVc7L2]
W}&[p=PAS u3p程序安装完后的会将data/再产生一份并copy至压缩档外,目的是用来将一些会修改到的档案,如ini等能够储存.
~R7F[R
+<5q8{]Pk device/的作用目前我只知可以放hlp,chm等档档.
r{y&}gA
Tb~|p_;o data/跟device/因还需在manifest.u3i中输入另外语法,才能让程序找到相关档案位置,所以如果为了方便的话,全部档案copy到Host/也可以.不过这样只是力求可以执行,许多情况还没有考虑到.
h`O"]2
: utY4 示范PieTTY封装成u3p档案
01. http://www.eure.ca/ ^PwZP;On
0#\K9|. 请Download PackageFactory,如图所示,该软件作用为封装成U3P格式,属于非官方的程序故未对封装后的U3P做最佳化,但已属堪用地步,安装很简单,点两下开始安装,按next即可,相信应该不用教这个吧!
sVdn>$KXk
W5C8$Bqm
m|K"I3W$ 02.按两下执行PackageFactory,然后按 Drop EXE Here or Click to Add
9o)sSaTx=
D~~"wos
*\#/4_yB} 03.寻找PieTTY执行文件位置.
}~W:3A{7;
ALcin))+B
y!z2+q2 04.按Advanced Mode...
[z:.52@!
w\V1pu^6@
2/WtOQIB 05.点Host Folder,再点Add File...
XAb%V'
$ol]G`+
uOQ!av2"Rf 06.按Shift将剩余的档案选起来.
f 7R/i
%`EyG
c;X%Ar 07.按Wizard Mode...
)_&P:;N
bI-uF8"
oW5Ov 08.按中间大大的"Create!"按钮.
D_N0j{E
2M+}o"g
aMJW__, 09.选择档案的储存位置.
mz2�v2ma
A-eRL`
h+c9FN u3p安装步骤
zcy`8&{A<?
Z?<&@YQS 01.请按照如图步骤.
*=}\cw\A
V2SHF
cX#U_U~d 02.找到PieTTY.u3p档案位置.
>rYkVlv
p4@0[z'
vawS5b; 03.按Next.
,FwJ0V
1pz-jo,2'
&W}6Xg( 04.安装完成后,按Done.
Cw�l:
WFTwFm6
_h I81Lzq 05.执行看看.
D,()e^o
&@�${@
}tQ^ch;�Q 06.可以执行.
(o^?i2)g
L^=G(op*
#8$"84&N. 后记:
如 果打开packagefactory封装的PieTTY.u3p,你会发现执行档等档通通都放在Data/底下,然后检查安装后的容量,你会发现多了一 倍,这时你应该知道原因吧!因为PieTTY.u3p压缩档内的data/又被Copy出来一次.如何解决?将u3p扩展名更名成zip,然后将所有档案 通通Copy到Host/下,接着将<appStart>内的App_Data_Path属性换成HOST_EXEC_PATH,再更名回 u3p扩展名.
paUlp7x u3p其实是一个zip压缩档,更名成zip扩展名后用winrar开启后会依据程序不同发现如下目录结构,
#Y3:~dmJ-
"p43# data/
JJHr<|K device/
pu(a&0 Host/
C3n_'O manifest/
:"+/M{qz
P@ewr} 其 中Host/是程序执行文件所在的位置并放置相关的dll档案,manifest/目录里有两个档案,manifest.u3i跟xxxxxx.ico, manifest.u3i是用xml语法来描述程序版本,厂商,执行路径等等,xxxxxx.ico是出现在u3选单里的图示,
re9*q
L&wJ-}'l 一个manifest.u3i范例
N;cEf7+f
*Mf; <u3manifest version="1.0">
`=A*ei5 <application uuid="12345678-1234-1234-1234-123456789abc" version="x.x.x.x">
(?SK< 4! <icon>xxxxxx.ico</icon>
E DuLgg@ <name>xxxxxx xxxxxx</name>
<vendor url=" http://www.xxxxxx.com/ 7� jq?zS| ">xxxxxx</vendor>
UUy%:t <description> [U3 build by Eure.ca]</description>
mQmn�&:R <opti>
iB[>uW <minFreeSpace>x.0</minFreeSpace>
Mq-QWx"P </opti>
f,�9jK9/$ <i18n></i18n>
]M AB </application>
:[:5^R <acti>
Bq~!_6fB <appStart cmd="%U3_HOST_EXEC_PATH%\xxxxxx.exe"></appStart>
aEr<(x!|" <appStop cmd="%U3_HOST_EXEC_PATH%\appstop.exe"> -t -s xxxxxx</appStop>
'N$hbl� <hostCleanUp cmd="%U3_HOST_EXEC_PATH%\appstop.exe"> -t -s xxxxxx</hostCleanUp>
*Dr�-{\9 </acti>
NpV#zzE </u3manifest>
DSG�tt/n
$0WO 4C%M 以下说明几个标签意义,略过没提有兴趣的,请自行寻找相关数据.
?>b>LDpx? uuid是一组用来识别特定事物的16进位号码,通常是用Microsoft的GUID来实作,这组号码是唯一的,是用来程序.在manifest\目录放好icon文件,<icon>卷标指定好该程序的icon文件名,u3选单会自己抓到路径并显示图标.
4\'1j|nS[
yl|?+ < vender>卷标说明软件厂商,url是其内可设定的属性值,<description>卷标则是叙述说明,可填可不填.最重要的卷 标是<acti>里面的子元素卷标,<appStart>是用来说明程序执行的所在路径,这里一定要对,否则程序就不能执行, <appStop>及<hostCleanup>则是当按下随身碟u3选单里的"Eject"时,u3会结束还在执行中的程序, 以便安全地退出.
A4RA5N/}
40TS=evG PS:但有些自己制作的软件,可能不能完全退出,会产生错误讯息.
%lVc7L2]
W}&[p=PAS u3p程序安装完后的会将data/再产生一份并copy至压缩档外,目的是用来将一些会修改到的档案,如ini等能够储存.
~R7F[R
+<5q8{]Pk device/的作用目前我只知可以放hlp,chm等档档.
r{y&}gA
Tb~|p_;o data/跟device/因还需在manifest.u3i中输入另外语法,才能让程序找到相关档案位置,所以如果为了方便的话,全部档案copy到Host/也可以.不过这样只是力求可以执行,许多情况还没有考虑到.
h`O"]2
: utY4 示范PieTTY封装成u3p档案
01. http://www.eure.ca/ ^PwZP;On
0#\K9|. 请Download PackageFactory,如图所示,该软件作用为封装成U3P格式,属于非官方的程序故未对封装后的U3P做最佳化,但已属堪用地步,安装很简单,点两下开始安装,按next即可,相信应该不用教这个吧!
sVdn>$KXk
W5C8$Bqm
m|K"I3W$ 02.按两下执行PackageFactory,然后按 Drop EXE Here or Click to Add
9o)sSaTx=
D~~"wos
*\#/4_yB} 03.寻找PieTTY执行文件位置.
}~W:3A{7;
ALcin))+B
y!z2+q2 04.按Advanced Mode...
[z:.52@!
w\V1pu^6@
2/WtOQIB 05.点Host Folder,再点Add File...
XAb%V'
$ol]G`+
uOQ!av2"Rf 06.按Shift将剩余的档案选起来.
f 7R/i
%`EyG
c;X%Ar 07.按Wizard Mode...
)_&P:;N
bI-uF8"
oW5Ov 08.按中间大大的"Create!"按钮.
D_N0j{E
2M+}o"g
aMJW__, 09.选择档案的储存位置.
mz2�v2ma
A-eRL`
h+c9FN u3p安装步骤
zcy`8&{A<?
Z?<&@YQS 01.请按照如图步骤.
*=}\cw\A
V2SHF
cX#U_U~d 02.找到PieTTY.u3p档案位置.
>rYkVlv
p4@0[z'
vawS5b; 03.按Next.
,FwJ0V
1pz-jo,2'
&W}6Xg( 04.安装完成后,按Done.
Cw�l:
WFTwFm6
_h I81Lzq 05.执行看看.
D,()e^o
&@�${@
}tQ^ch;�Q 06.可以执行.
(o^?i2)g
L^=G(op*
#8$"84&N. 后记:
如 果打开packagefactory封装的PieTTY.u3p,你会发现执行档等档通通都放在Data/底下,然后检查安装后的容量,你会发现多了一 倍,这时你应该知道原因吧!因为PieTTY.u3p压缩档内的data/又被Copy出来一次.如何解决?将u3p扩展名更名成zip,然后将所有档案 通通Copy到Host/下,接着将<appStart>内的App_Data_Path属性换成HOST_EXEC_PATH,再更名回 u3p扩展名.