extension_loaded的简单介绍

http://www.itjxue.com  2023-02-08 20:46  来源:未知  点击次数: 

怎么解决 xdebug not loaded as zend extension

您好!很高兴为您答疑! 配置文件应该没问题,您尝试下重新安装,或者使用Firebug,功能更强大。 您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。

DRIVER_OBJECT的DRIVER_OBJECT结构体

每个驱动程序对象代表了一个加载了的内核模式驱动程序映像.这个驱动对象就是以DRIVER_OBJECT结构体的形式存在的.这个驱动对象的指针从驱动程序的DriverEntry函数或AddDevice函数的参数传入的.

typedef struct _DRIVER_OBJECT {CSHORT Type;CSHORT Size;

//// The following links all of the devices created by a single driver// together on a list, and the Flags word provides an extensible flag// location for driver objects.//

PDEVICE_OBJECT DeviceObject;ULONG Flags;

//// The following section describes where the driver is loaded. The count// field is used to count the number of times the driver has had its// registered reinitialization routine invoked.//

PVOID DriverStart;ULONG DriverSize;PVOID DriverSection;PDRIVER_EXTENSION DriverExtension;

//// The driver name field is used by the error log thread// determine the name of the driver that an I/O request is/was bound.//

UNICODE_STRING DriverName;

//// The following section is for registry support. Thise is a pointer// to the path to the hardware information in the registry//

PUNICODE_STRING HardwareDatabase;

//// The following section contains the optional pointer to an array of// alternate entry points to a driver for fast I/O support. Fast I/O// is performed by invoking the driver routine directly with separate// parameters, rather than using the standard IRP call mechanism. Note// that these functions may only be used for synchronous I/O, and when// the file is cached.//

PFAST_IO_DISPATCH FastIoDispatch;

//// The following section describes the entry points to this particular// driver. Note that the major function dispatch table must be the last// field in the object so that it remains extensible.//

PDRIVER_INITIALIZE DriverInit;PDRIVER_STARTIO DriverStartIo;PDRIVER_UNLOAD DriverUnload;PDRIVER_DISPATCH MajorFunction[IRP_MJ_MAXIMUM_FUNCTION + 1];

} DRIVER_OBJECT;typedef struct _DRIVER_OBJECT *PDRIVER_OBJECT; // ntndis

下面这段话怎么翻译

该数据库API一旦你和你的数据库计划给予必要的限制和考虑它的编程就可以开始。安装一个数据库卷如果你的数据库的外部媒体,如CF卡,您需要装入数据库卷包含它。装入数据库卷,请布尔CeMountDBVol(PCEGUID pguid,LPWSTR lpszVol,双字节值dwFlags);这个函数有两个目的:它可以创建一个新的卷或打开一个现有的卷。第一个参数是一个GUID指针。 CeMountDBVol返回一个GUID,它的使用的数据库大多数功能,以确定数据库文件的位置。你不应该混淆CEGUID -型类型的GUID是由OLE和Windows外壳部分使用的数据库功能的GUID参数。阿CEGUID是简单的处理,跟踪打开的数据库卷。CeMountDBVol中的第二个参数是装入卷的名称。这不是一个数据库的名称,而是一个文件将包含一个或多个数据库的名称。由于参数是一个文件名,你应该定义它在\路径\ name.ext格式。该标准的扩展,应该是国家开发银行。最后一个参数,dwFlags,应装有国旗如何定义函数的行为。可能的标志如下:?CREATE_NEW创建新的数据库卷。如果卷已存在,则函数失败。?CREATE_ALWAYS创建新的数据库卷。如果卷已存在,它会覆盖旧的数量。?OPEN_EXISTING打开一个数据库卷。如果卷不存在,该函数将失败。?OPEN_ALWAYS打开一个数据库卷。如果卷不存在,一个新的数据库卷创建。?TRUNCATE_EXISTING打开一个数据库卷并截断为0字节。如果卷已存在,则函数失败。如果类似的标志为标志的CreateFile的行动,他们应该。对CeMountDBVol的行动基本上反映的CreateFile除外,而不是创建或打开一个通用的文件,CeMountDBVol创建或打开举行特别设计的数据库文件

雷神之锤4机器人

不知你说的疯狂机器人是否就是SABOT

我用SABOT

方法是解压到Q4文件夹事先中手动新建的“SABOT”文件夹

然后运行游戏,在主菜单中“MOD”选项中栽入sabot

游戏重新启动后建立服务器,然后在控制台中输入:

addbot bot_sabot

具体的看英文原文如下。

----------------------------------------------------------------------------------

= SABot - Stupid Angry Bot - A Multiplayer Bot for Quake 4 =

It won't eat, it won't sleep, it absolutely will not stop, until it does something stupid.

Version: Alpha 10 - "I obey these words, written in my head. I think they are spelled wrong."

Date: 2005-08-08

Author: Jarad "TinMan" Hansen

Site:

NOTE: This is an Alpha version.

While theoretically the worst that will happen is the game crashes, I hold no responsibility if your computer explodes in a ball of incandescent fury.

= ChangeLog =

Just an update to Q4 1.3, quick hack, 80% broken, support for deadzone gametype.

Minor bug fixes.

Now based off new fake-client framework worked by custom, John, gauss.

Bot's persist over map change.

= Note for previous users of SABot =

Do a fresh install, don't install to an existing installation (rename that fisrt then bring over any stuff from that you want to).

The aas compiler has been updated by custom, the command is now runbotaas. You should recompile custom map aas files from scratch rather than copy them from your previous instalation.

= Known bugs and Limitations =

Well, most of it, I could write a novel.

Due to a hd crash I lost the stock maps I updated for improved aas/bot navigation so the stock maps the will play worse ie "get stuck" on geometry.

More info here:

= Performance =

As a rule you generally want performance over graphics in multiplayer games anyway, and throwing in CPU eating bots means you may want to consider dropping details down a bit.

i.e. High special effects and shadows off, dropping down resolution. Have a look for Quake 4 tweak guides on the net.

As well as experimenting with how many bots your system can comfortably handle.

= Using the Mod =

IMPORTANT: Make sure your Quake 4 installation has been updated to version 1.2.

Will not work on earlier versions of q4 and not guaranteed to work on later versions of q4.

1. Installation: Create a folder inside the Quake 4 folder called "sabot" and unzip the files into it.

2. Loading the mod:

Run the batch file "Load Sabot" in the sabot folder.

Or load quake 4 and choose sabot from the mods menu.

NOTE: You'll be able to tell if the mod has loaded successfully by typing:

gamename

At the console, it should say "SABot a10".

3. Adding a bot

Start a new multiplayer server

To add a bot bring down the console (via the CTRL-ALT-TILDE (~) keys) and type:

addbot bot_sabot

NOTE: addbot command works like the spawn command, eg accepts key/value pairs.

NOTE: Typing addbot bot_TAB will give you a list of bot defs.

4. Removing a bot

Use the console command:

removebot n

Where n is the clientnum of the bot. Bot clientnums start from 32 down.

or

removebot botname

Where botname is the name of the bot

or

removeallbots

To clear all bots.

= Bot difficulty =

Bots aim accuracy or "drunkenness factor" can be set when bot is added with the key/value "aim_accuracy", higher value = less accurate.

Range [0-4]

You can slow down bots aim a bit with key/value "aim_rate" default is 0.5 with less being slower. Range [0.1-1]

Example:

addbot bot_sabot aim_accuracy 3 aim_rate 0.4

= Teams =

The team of the bot can be specified with the team key/value. 0 = Marine, 1 = strogg Note: autobalance may override this.

You can force bot's to change team via the normal admin menu.

= Customising =

Bots can be customised as they are added (as seen above) or via def file.

The bots read all ui_* key/value like a player.

These include:

ui_name - For the name of the bot

ui_clan

ui_model

ui_hitscanTint

Examples:

addbot bot_sabot ui_name "Fluffy Bunny" ui_model "model_player_marine_tech"

Some of the above setting are in their own character def files, the can be added with:

addbot bot_sabot_tinman

addbot bot_sabot_blackstar

addbot bot_sabot_fluffy

Have a look at the file sabot/sabot-pak000.pk4 /def/bot_sabot_characters.def for the examples.

NOTE: The Quake 4 uses Zip archives with the extension .pk4 which may be opened in winzip. The .def files are plain text files.

= Playing custom maps =

Compiling AAS Files: The AI navigation system in Quake 4 relies on its own map of the level you are playing on. Chances are most multiplayer maps weren't created with this in mind but you can force the engine to compile them. They'll be rough, but will work for the most part.

You'll only have to do this once for each map that doesn't have them.

1. The aas compiler can currently only be run when the mod has been loaded fresh, while at the main menu and before you have started a server.

2. The console command to compile an aas file is:

runbotaas /mp/mapname

Where mapname is the file name of the custom map.

NOTE: This has changed from the previous version where it was runaas.

NOTE: You can use the TAB key to complete what you started typing.

NOTE: Use the console command

dir maps/mp/

to list the filenames.

The quality of the aas file (i.e. incomplete areas for bot) will depend on how the map author has handled patches and models. See below.

= Map authors - Making your own map bot ready =

The aas compiler takes into account brush geometry but not patches or models (func_statics etc). You must block these out with a brush textured with common/monsterclip.

See the quake4 single player maps for examples.

And also the resource about clipping at quake4/iddevnet:

And also keep your eyes peeled on doom3world.org for info.

Things will be a lot better if you follow the standard quake 3 "playerclip everything you can" approach.

Also make sure the file aas.def in the sabot pak000.pk4 is loaded with your editor, this means either putting the file in base/def (which will cause problems for single player maps) or loading the editor with the sabot folder set as fs_game, i.e. quake4 +editor +set fs_game sabot

When running bsp/dmap runaas will automatically be run. You'll notice the only aas compiled is the aas32, the rest will be 630bytes empty and you can delete them.

In game use aas_showareas 2 and have a run around to get an idea of where the areas are, and note that they shouldn't pass through something that's solid to a player (do a test map with a crate made out out of a brush and one made out of a func_static to see what I mean).

= Running a pure server =

This is mainly for those who wish to run a server for other people over the internet.

I set pure mode to off in the autoexec.cfg because the aas compiler requires it and it's the easiest way to run custom maps with the aas files.

If you want to run a pure server:

1. change the autoexec.cfg

2. All extra data files that you have created that weren't in the sabot .zip - ie the aas files for the custom maps - must be put in a .pk4

3. People who wish to connect to your server must have the extra .pk4 files. How you distribute them is up to you, if it's just for friends you can just send the .pk4s.

If it's a public server you could set up autodownload.

= Feedback =

Visit the SABot section in the OakBot forums:

= Distribution =

Distribute as you will, just keep the zip unmodified. Sweet.

= Thanks and credits to =

Super ZOMG thanks to Steve "cusTom3" Baker for putting up with my incessant rambling and his herculean efforts at deciphering the aas system and adding jumpad and teleporter reachabilities.

Thanks again to Richard "Son of Sam 2" Potter for his testing. SABot may be crap, but it's less crap because of him.

Cheers John Cricket for throwing up a SABot section off his OakBots forum.

Rick "GaussDecay" Idon'tknowyourlastname for the aim blending cooperatively thrashing around with the fake client framework and answering exactly "what's ccookin".

doom3world.org for providing an excellent d3engine modding community. It is excellent.

Raven for the fun continuation to both q2 an q3.

And you. Yeah you know.

Previous (but still valid) sabot thanks to:

Extreme thanks to id Software for making the Doom 3 engine easily modifiable for a retard like me.

Oh and thanks id for making the script plain text and thus hooking me into making this, and for the nice sdk code.

And for the brilliant AAS navigation system.

Brian from iddevnet for pointing out the runaas command and starting a solution for the usrcmds transmission.

Mega thanks to Steve "Cobalt" Gray for pointing out the (now blindingly obvious) fake client approach, and creating the not so obvious network wrapper.

Gate from Team Mirage for his initial grueling attempt to compile the linux build for a8.

AnthonyJ for the fix and the a8 linux build.

= Final Thoughts =

Alpha 8:

This may be the first and last version of SABot for q4 (though I've said that in the past for d3), with the new q4 bot community shaping up it doesn't make sense to continue it when the more seasoned lads will eclipse it so totally.

I knew things would heat up in the bot dev world for q4 and I'm real glad to see the collaborative effort that's building up at the OakBot site.

Plus I have wanted to have a bash other mod ideas for a fair while now, for good or worse. So, while I won't have a direct hand in further q4 bot developments, I will at least have a seditious whispering voice in it.

I had always intended to do a quick port of SABot from Doom 3, mainly to get something out for the community (no matter how crap). I had however been halfway through a goal/priority system overhaul so I had to complete and tweak it (which I haven't completed), then with the conversion over to q4 I decided to take advantage of the updated movement/enemy code, which took a while. After breaking the CTF code for the third time and finding problems with my old enemy selection code, I can now say with all the new code thrown in it's better and than the previous sabot. Kinda.

I'm also very glad that the mp performance is way better than d3 (especially the xp) which means a decent amount of bots can be added for a game of ctf.

With Raven having (quite understandable) shifted the scripts for weapons/actors and ai to game code and creating stae macros that kept the system very similar to what it was it would have been very easy for me to shift to full c++. Quoting myself: Having to extend, manage and debug a scripting system for something like ai can get tedious, going with full c++ and an ide, compiler and debugger that's had years of optimisiations and refinements is a big draw.

So why didn't I? As I mentioned I doubt SABot has any long term viability, I'm only just bumping into scripting limitations in this version. And the main reason - I started out learning programming with the d3 AI scripts and I like the idea of having something out there that the newbies can rip into and have a crack at something themselves. You don't allways have to create something striving for the best as long as you are having fun.

I'll shut up now.

Alpha 9:

Ah yes an update to q4 1.2 is all I currently have time for, it's a shame, I killed a couple of bugs but that's just exposed more in the stuff I had planned to overhaul. The whole thing is creaking at the seams. Bums.

Alpha 10:

It rises again from the grave to forever taunt me. Just a quick update to 1.3, but SABot had been previously shifted to the new fake-client framework which was a lot cleaner and stable. The ai code it still the horrible stuff that hasn't had any major overhaul since a7/doom3. But whatever, it works.

--------------------------------------------------------------------------------

(责任编辑:IT教学网)

更多

推荐综合特效文章