无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: Yonsm

XCMD 2.2.678 - 功能强大的 XPE 命令解释工具

[复制链接]
发表于 2007-1-8 23:50:55 | 显示全部楼层
原帖由 Yonsm 于 2007-1-8 11:46 PM 发表


我测试过可以呀

那该怎么操作呢?我已启用了SERVER服务,并使用了net user administrator 1111命令
回复

使用道具 举报

 楼主| 发表于 2007-1-8 23:54:19 | 显示全部楼层
VC6 SP5 可编译。老九请在此下载。

另外说句题外话,要做这样的程序,除了 VC+++++,其他开发工具明显不太合适。因为不够Native。用Delphi什么Windows API都用得来的人,花两天时间看看 C++ 语法,搞这个应该很快就能转过来的。哈哈,希望别人把这个东西的其他功能做下去,我其实不是玩这个的,最近花了好多时间,觉得好可惜呀……

XCMD-VC6.rar

46.04 KB, 下载次数: 276, 下载积分: 无忧币 -2

VC6 SP5 可编译的版本

回复

使用道具 举报

 楼主| 发表于 2007-1-8 23:55:44 | 显示全部楼层
原帖由 acoa 于 2007-1-8 11:50 PM 发表

那该怎么操作呢?我已启用了SERVER服务,并使用了net user administrator 1111命令


请使用 本地连接 PENETCFG.EXE,点击文件共享。而不要手动启动服务
回复

使用道具 举报

 楼主| 发表于 2007-1-9 00:00:25 | 显示全部楼层
原帖由 strongchen 于 2007-1-8 11:50 PM 发表


我也提个要求,加入从现有xp寻找驱动并复制到pe,如何?


可以做到搜索一下当前所有分区的可能的目录 Windows 或 WINNT 等,找到 INF。然后再找 SYSTEM32和DRIVERS,如果里面的文件名在 INF 中存在,就复制到 PE 中,嘿嘿……能搞定吧

初步设想,肯定可行。不过我真觉得我的想法和大家不一样,我觉得 PE 用来维护系统,原则是绝对不能依赖硬盘上的东西,也不要创建PageFile等可能影响本地硬盘的操作。
回复

使用道具 举报

 楼主| 发表于 2007-1-9 00:05:35 | 显示全部楼层
这样吧:
DEVI 命令我扩充一下,增加驱动安装功能和从本地硬盘搜索驱动的功能。
DISP 增加一个,自动或手动设定分辨率。
FILE 命令代替 DELE 命令,增加复制文件,重命名文件功能。
CDIR 创建空目录(尚未决定)
PAGE 命令用于设定页面文件
SERV 用户启动或停止服务/驱动

大家的要求都能满足了

然后做一个 XCAB 用户自动生成DEVI使用的优化过的驱动程序 CAB 包。并支持自动从本机提取驱动的功能。

想法就这样了,有别人能来实现,那最好了,我不太想搞了
回复

使用道具 举报

发表于 2007-1-9 00:10:53 | 显示全部楼层
嘿嘿。pe的确不太应该依赖硬盘上的东西,不过在占用size太多的情况下,不失为一条“后路”
回复

使用道具 举报

发表于 2007-1-9 00:17:32 | 显示全部楼层
原帖由 Yonsm 于 2007-1-8 11:54 PM 发表
VC6 SP5 可编译。老九请在此下载。

另外说句题外话,要做这样的程序,除了 VC+++++,其他开发工具明显不太合适。因为不够Native。用Delphi什么Windows API都用得来的人,花两天时间看看 C++ 语法,搞这个应该很 ...


更晕了,原来的程序编译时只有一个错误(欠CfgMgr32.h,的确,Include目录没有这个文件),现在是一大堆,30多个,本人的VC++6.0 SP6。
看来转VC太难了。
回复

使用道具 举报

 楼主| 发表于 2007-1-9 00:21:38 | 显示全部楼层
原帖由 lxl1638 于 2007-1-9 12:17 AM 发表


更晕了,原来的程序编译时只有一个错误(欠CfgMgr32.h,的确,Include目录没有这个文件),现在是一大堆,30多个,本人的VC++6.0 SP6。
看来转VC太难了。


Visual Studio 6.0 SP6 不支持 内联汇编,我使用了汇编来修改内存中 USER32.DLL 的关机代码,让他来调用 XCMD.EXE 的关机命令。

e...我想想,到底 SP6 不支内联汇编,还是不支持 MMS/SSE/SSE2 intrinsic 指令呢,我记不太清楚了。总之建议大家都上 VS2005 啦:)

SP5 肯定编译可以的,我自己编译过的。现在把错误贴出来我看看。
回复

使用道具 举报

发表于 2007-1-9 00:24:57 | 显示全部楼层
原帖由 Yonsm 于 2007-1-9 12:21 AM 发表


Visual Studio 6.0 SP6 不支持 内联汇编,我使用了汇编来修改内存中 USER32.DLL 的关机代码,让他来调用 XCMD.EXE 的关机命令。

e...我想想,到底 SP6 不支内联汇编,还是不支持 MMS/SSE/SSE2 intrinsic 指 ...

--------------------Configuration: XCMD - Win32 Debug--------------------
Compiling...
XCMD.cpp
WARNING: Could not detect device driver state in Visual C++ 6.0!
E:\C++教程\XCMD-VC6\XCMD.cpp(187) : error C2664: 'SetupIterateCabinetA' : cannot convert parameter 3 from 'unsigned int (void *,unsigned int,unsigned long,unsigned long)' to 'unsigned int (__stdcall *)(void *,unsigned int,unsigned int,unsigned int)'
        None of the functions with this name in scope match the target type
E:\C++教程\XCMD-VC6\XCMD.cpp(822) : error C2065: 'ULONG_PTR' : undeclared identifier
E:\C++教程\XCMD-VC6\XCMD.cpp(822) : error C2065: 'puToken' : undeclared identifier
E:\C++教程\XCMD-VC6\XCMD.cpp(822) : error C2059: syntax error : 'const'
E:\C++教程\XCMD-VC6\XCMD.cpp(823) : error C2146: syntax error : missing ')' before identifier 'uToken'
E:\C++教程\XCMD-VC6\XCMD.cpp(823) : error C2165: 'left-side modifier' : cannot modify pointers to data
E:\C++教程\XCMD-VC6\XCMD.cpp(823) : error C2071: 'PGdiplusShutdown' : illegal storage class
E:\C++教程\XCMD-VC6\XCMD.cpp(823) : error C2059: syntax error : ')'
E:\C++教程\XCMD-VC6\XCMD.cpp(835) : error C2146: syntax error : missing ';' before identifier 's_uToken'
E:\C++教程\XCMD-VC6\XCMD.cpp(835) : error C2065: 's_uToken' : undeclared identifier
E:\C++教程\XCMD-VC6\XCMD.cpp(841) : error C2146: syntax error : missing ';' before identifier 'pGdiplusStartup'
E:\C++教程\XCMD-VC6\XCMD.cpp(841) : error C2065: 'pGdiplusStartup' : undeclared identifier
E:\C++教程\XCMD-VC6\XCMD.cpp(877) : error C2146: syntax error : missing ';' before identifier 'GetProcAddress'
E:\C++教程\XCMD-VC6\XCMD.cpp(1128) : error C2664: 'DialogBoxParamA' : cannot convert parameter 4 from 'long (struct HWND__ *,unsigned int,unsigned int,long)' to 'int (__stdcall *)(struct HWND__ *,unsigned int,unsigned int,long)'
        None of the functions with this name in scope match the target type
执行 cl.exe 时出错.

XCMD.exe - 1 error(s), 0 warning(s)
回复

使用道具 举报

 楼主| 发表于 2007-1-9 00:28:15 | 显示全部楼层
原帖由 lxl1638 于 2007-1-9 12:24 AM 发表





Visual C++ 6.0 SP6,安装啦?没有安装才会出这样的问题。请加装 SP5,不要用最新的 SP6
SP6 有功能缺失,SSE2等
回复

使用道具 举报

发表于 2007-1-9 00:29:51 | 显示全部楼层
原帖由 Yonsm 于 2007-1-8 11:55 PM 发表


请使用 本地连接 PENETCFG.EXE,点击文件共享。而不要手动启动服务

谢谢老大,已照你方法搞定
回复

使用道具 举报

 楼主| 发表于 2007-1-9 00:32:07 | 显示全部楼层
你安装了 SP6 的话,肯定会有 ULONG_PTR 的。
VC6 SP6

MS 可以下载,100M左右,其实,我这里有绿色的 VC6,什么都配制好的,非常好用。什么时候我上传一下,才50M,包括 DirectX、BrewSDK 等等呢,还可选择。什么不定等等都打包好了。不过VC6过时了,建议都上 VS2005,集大成者,什么程序都作的来 Windows 上的,包括 Windows Mobile。
回复

使用道具 举报

发表于 2007-1-9 00:32:36 | 显示全部楼层
是网上介绍所谓最好的龙卷风论坛出的:

VC 个头太大了,也不知要安装那几个部分。
未命名.PNG
回复

使用道具 举报

 楼主| 发表于 2007-1-9 00:47:42 | 显示全部楼层
原帖由 lxl1638 于 2007-1-9 12:32 AM 发表
是网上介绍所谓最好的龙卷风论坛出的:

VC 个头太大了,也不知要安装那几个部分。


我知道了,我安装了 Platform SDK,所有有些新东西。VC6 本身的东西很多都过时了,最基本的对话框函数的声明都不一样了。

传了个新版本,这下可以编译了。你试试看

XCMD-VC6.rar

46.06 KB, 下载次数: 123, 下载积分: 无忧币 -2

VC6SP5 可编译

回复

使用道具 举报

 楼主| 发表于 2007-1-9 01:00:33 | 显示全部楼层
有兴趣的话可以到置顶FTP上  Yonsm\2007.01.09\MSVC.rar 下载绿色版的 VC,全部都配制好的 VC6+SP5+PP5。
工程的Debug编译 版本可能会缺少 DLL,改为 Static 方式连接即可。Release 无此问题(系统中有)。

压缩后,总共才28M。解压到任意目录,执行 BAT 即可。

[ 本帖最后由 Yonsm 于 2007-1-9 01:02 AM 编辑 ]
回复

使用道具 举报

发表于 2007-1-9 01:01:25 | 显示全部楼层
Compiling...
XCMD.cpp
WARNING: Could not detect device driver state in Visual C++ 6.0!
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/XCMD.exe : fatal error LNK1120: 1 unresolved externals
执行 link.exe 时出错.
回复

使用道具 举报

 楼主| 发表于 2007-1-9 01:04:01 | 显示全部楼层
原帖由 lxl1638 于 2007-1-9 01:01 AM 发表
Compiling...
XCMD.cpp
WARNING: Could not detect device driver state in Visual C++ 6.0!
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/XCMD.exe : fatal e ...


你自己建立的工程?我建好的工程 XCMD.dsw 你打开就OK了。
建工程的时候选择 Win32 APP,而不是 Win32 Console


WARNING: Could not detect device driver state in Visual C++ 6.0!是我加的,VC6里面没有 CfgMgr32.h,我注释掉了这段代码,用来监测驱动是否已经配制过的。

没有这段代码的话,将会查找所有设备的驱动程序——即使已经安装好。

[ 本帖最后由 Yonsm 于 2007-1-9 01:05 AM 编辑 ]
回复

使用道具 举报

发表于 2007-1-9 01:09:34 | 显示全部楼层
原帖由 Yonsm 于 2007-1-9 01:04 AM 发表


你自己建立的工程?我建好的工程 XCMD.dsw 你打开就OK了。
建工程的时候选择 Win32 APP,而不是 Win32 Console


WARNING: Could not detect device driver state in Visual C++ 6.0!是我加的,VC6里面没 ...



搞定,谢谢。
回复

使用道具 举报

发表于 2007-1-9 07:34:41 | 显示全部楼层
原帖由 Yonsm 于 2007-1-9 01:04 AM 发表


你自己建立的工程?我建好的工程 XCMD.dsw 你打开就OK了。
建工程的时候选择 Win32 APP,而不是 Win32 Console


WARNING: Could not detect device driver state in Visual C++ 6.0!是我加的,VC6里面没 ...

老大:你好!能否贴几张图介绍一下如何用你置顶的Visual C++ 6.0和提供的源码做成EXE文件。我做出来有232K?

[ 本帖最后由 wanghh 于 2007-1-9 07:54 AM 编辑 ]
回复

使用道具 举报

发表于 2007-1-9 13:53:43 | 显示全部楼层
原帖由 wanghh 于 2007-1-9 07:34 AM 发表

老大:你好!能否贴几张图介绍一下如何用你置顶的Visual C++ 6.0和提供的源码做成EXE文件。我做出来有232K?


呵呵,如果做出来的是200多K,那么你打开生成的XCMD.exe,就不会看到框中的内容了吧。。。。。应当是60多K才能看得到的
回复

使用道具 举报

 楼主| 发表于 2007-1-9 14:39:37 | 显示全部楼层
原帖由 kafen 于 2007-1-9 01:53 PM 发表


呵呵,如果做出来的是200多K,那么你打开生成的XCMD.exe,就不会看到框中的内容了吧。。。。。应当是60多K才能看得到的



Debug 版本。
Debug 我没有定义 UNICODE,_UNICODE,所以看不了帮助。

看样子你似乎知道,干嘛不回答一声呢?
回复

使用道具 举报

发表于 2007-1-9 15:31:47 | 显示全部楼层
楼主高人!学习了!
回复

使用道具 举报

发表于 2007-1-9 15:39:22 | 显示全部楼层
原帖由 Yonsm 于 2007-1-9 02:39 PM 发表



Debug 版本。
Debug 我没有定义 UNICODE,_UNICODE,所以看不了帮助。

看样子你似乎知道,干嘛不回答一声呢?

不好意思,因为我是昨天刚接触VC,还差点弄出笑话呢,所以现在不敢确认是否是这情况呀!
对于什么DEbug,UNICODE,_UNICODE我真的不懂!
我就把新手如何使用你FTP的MSVC及源码的使用过程写一遍吧:
1.运行Microsoft Visual C++ 6.0.bat,点击File-Open Workspace-选择并打开XCMD.dsw
2.点击Build-Set Active Configuration,打开Set Active Project Configuration窗口,选择XCMD-WIN32 Release,点击OK确定!
3.点击Build-Build XCMD.exe或F7均可在Release文件夹中生成XCMD.exe文件。

就是这样,生成后的XMCD.exe的文件为60K!
回复

使用道具 举报

发表于 2007-1-9 16:35:23 | 显示全部楼层
原帖由 kafen 于 2007-1-9 03:39 PM 发表

不好意思,因为我是昨天刚接触VC,还差点弄出笑话呢,所以现在不敢确认是否是这情况呀!
对于什么DEbug,UNICODE,_UNICODE我真的不懂!
我就把新手如何使用你FTP的MSVC及源码的使用过程写一遍吧:
1.运行Micr ...

谢谢!:victory:
回复

使用道具 举报

发表于 2007-1-9 16:42:03 | 显示全部楼层
原帖由 Yonsm 于 2007-1-9 02:39 PM 发表



Debug 版本。
Debug 我没有定义 UNICODE,_UNICODE,所以看不了帮助。

看样子你似乎知道,干嘛不回答一声呢?

另外楼主,因为你提到定义Debug 的UNICODE,_UNICODE,我试着去定义了一下,通过定义后生成XCMD.exe是可以看到,可是体积却是208K,请问以我刚才选择Release还是定义DEBUG的UNICODE,_UNICODE好呢?对以后使用有什么影响?

查了一下资料如下:

1.   Release优化,Debug不优化   
  2.   Debug带调试信息,Release不带   
  3.   Debug连接Debug版的CRT,Release连接Release版的   
  4.   有些代码用#ifdef   DEBUG   ...   #endif括起来的只在Debug中有效。包括ASSERT等。

[ 本帖最后由 kafen 于 2007-1-9 05:06 PM 编辑 ]
回复

使用道具 举报

发表于 2007-1-9 17:01:53 | 显示全部楼层
原帖由 Yonsm 于 2007-1-7 09:37 PM 发表
下面是一份命令文件示例,实际应用于 RXPE 中:


老大是把这段源代码加到XCMD.cpp中?
回复

使用道具 举报

发表于 2007-1-9 17:03:09 | 显示全部楼层
原帖由 Yonsm 于 2007-1-7 09:37 PM 发表
下面是一份命令文件示例,实际应用于 RXPE 中:


谢谢!!!:handshake
回复

使用道具 举报

发表于 2007-1-9 17:05:32 | 显示全部楼层
原帖由 wanghh 于 2007-1-9 05:01 PM 发表

老大是把这段源代码加到XCMD.cpp中?

不是吧,应当是建一个INI文件,把这段代码复制到其中。
回复

使用道具 举报

发表于 2007-1-9 17:22:59 | 显示全部楼层
老大,我有个USB无线网卡TL-WN620G,下面是它的驱动,它有两个INF文件、一个BIN文件(放在DIRVER目录)、还有两个SYS文件,我把它们放到对应的目录去了,可以安装成功。
但用devi怎么处理呢?附上驱动程序,帮看一下。

TL-WN620G.rar

229.63 KB, 下载次数: 60, 下载积分: 无忧币 -2

回复

使用道具 举报

 楼主| 发表于 2007-1-9 20:09:24 | 显示全部楼层
原帖由 acoa 于 2007-1-9 05:22 PM 发表
老大,我有个USB无线网卡TL-WN620G,下面是它的驱动,它有两个INF文件、一个BIN文件(放在DIRVER目录)、还有两个SYS文件,我把它们放到对应的目录去了,可以安装成功。
但用devi怎么处理呢?附上驱动程序,帮看 ...


OK,过两天我会加入
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-3-29 09:29

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表