由于工作的原因,需要将Flash CS5的xfl工程形式压缩层.fla的文件,想集成在系统右键菜单里面,但是没有现成的工具,于是开动脑筋自己琢磨了一下,可以利用一下几个工具来实现自己的目标。
1,打开加加(一个定制系统右键的工具);
2,批处理命令;
3,WinZip及命令行版(命令行工具需要去官方网站单独下载,他是依托于你购买的WinZip的);
4,自己写一个直接执行命令行的小程序;
在这里要给打开加加提个建议,为什么不能调用.bat和.cmd文件呢,非要调用.exe程序?让我费了这么大的周折;
现在把成果一一贴出来,如有问题可以加我的tencent微博:http://t.qq.com/larntin
1,打开加加的设置:
2,批处理命令内容:
@echo off ::需要压缩的路径和文件名 set FILES=bin LIBRARY META-INF *.xfl *.xml ::-------------------------------------------------------- set PATH="%1" PATH=%PATH:~1,-1% cd %PATH% for /f "delims=" %%a in ("%PATH%") do set DIRNAME=%%~na if exist %DIRNAME%.xfl ("C:/Program Files/WinZip/WZZIP.EXE" %DIRNAME%.fla -P -r %FILES%) ::-------------------------------------------------------- :MAKEEND exit
3,自己写的小程序内容:
#include "stdafx.h" #include "stdlib.h" #include "string.h" #include <windows.h> #pragma comment( linker, "/subsystem:/"windows/" /entry:/"mainCRTStartup/"" ) int main(int argc, TCHAR* argv[]) { char cmd[1024] = ""; memset(cmd, 0, 1024); strcpy(cmd, "cmd"); for (int i = 2; i < argc; i++){ printf(argv[i]); strcat(cmd, " "); strcat(cmd, argv[i]); } SetCurrentDirectory(argv[4]); system(cmd); return 0; }
没有做任何的加工。