Here's my implemention of the Windows NT (2000, XP, 2003, Vista) service specifications..
I've finally finished it, and i guess its ready to be released.
Please check readme.txt for info on usage, i'm not rewriting all that stuff here :P
Download: http://voodooattack.sitesled.com/FB/FBServ.zip
Download v0.1: http://voodooattack.sitesled.com/FB/FBServ-0.1.zip
Download v0.2: http://voodooattack.sitesled.com/FB/FBServ-0.2.zip
All Comments, Feedback, Bug reports, criticism are welcome.. :)
EDIT:
-- New version 0.2
-- HOTFIXED
Code: Select all
Change log:
~~~~~~~~~~~
0.2
-> Hotfix: SrvInstallService() workaround for XPSP1 bug.
-> Hotfix: SrvGetServiceStatus() Error checking -thanks coderJeff
-- New: External Control Application. [ConsoleControl.bas]
You can use it for services without a command-line interface.
Can Install/Uninstall/Start/Stop the service.
-- Change: now undefining _ALLOWCMDLINE__ will completely remove
other dependencies (Control functions, etc..)
(exe file size can be slimmed down around ~11KB!!)
-- New: NTMake.cmd: [Optional] allows linking to ntdll directly,
will replace msvcrt's imports with their faster low-level
equivalents:
_itoa
memcpy
memset
strcat
strcpy
strlen
strrchr
tolower
toupper
_ultoa
perhaps even more..
All replaced at FreeBASIC's run-time library level..
Allows for almost 2x-4x speed on NT systems..
-- Fixed service description handling on older systems.
Will set it via registery directly, if ChangeServiceConfig2
Doesn't exist on the target system.
-- Added optional memory compacting mechanism.
Flushing the process' Physical memory (RAM) to the pagefile.
can dramatically decrease physical memory usage..
-- Many other changes/fixes..
0.1
-- Many minor fixes/changes.
0.0
-- First version..