API函数:RegisterServiceProcess的问题,为何会出现:undefined function 'RegisterServiceProcess'?

JAC 2001-07-27 08:43:38
并且使用GetProcAddress函数,
GetProcAddress(LoadLibrary("kernel32.dll"),"RegisterServiceProcess")
得取其地址,还是回出现: Extra parameter in call 错误。
...全文
210 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
JAC 2001-08-02
  • 打赏
  • 举报
回复
哈哈
原来要用指针调用啊!
楼上的兄弟不要紧张吗,分数是要给的。但是不要急
其实你的两段代码都是一样的作用。
JAC 2001-07-29
  • 打赏
  • 举报
回复
难道真的没有人知道吗?
wangxd 2001-07-29
  • 打赏
  • 举报
回复
给分,下面的是隐藏用的
DWORD (*hh)(DWORD dwProcessId,DWORD dwType);
HINSTANCE hInst;

hInst = LoadLibrary("kernel32.DLL");
if (hInst!=NULL)
{
try
{
(FARPROC &)hh=GetProcAddress(hInst,"RegisterServiceProcess");
if (hh!=NULL)
{
hh(GetCurrentProcessId(),1);
ShowMessage("hide success");
}
else
ShowMessage("load function fail");
}
__finally
{
FreeLibrary(hInst);
}
}
else
ShowMessage("load library faile");
xrbeck 2001-07-29
  • 打赏
  • 举报
回复
转贴:
回复人:Sandyyang(雨夜街头) (2001-2-26 20:23:00) 得4分
typedef DWORD (__stdcall *pRegFunction)(DWORD, DWORD);

class TForm1 : public TForm
{
__published:
TButton *Button1;
private:
HINSTANCE hKernelLib;
pRegFunction RegisterServiceProcess;
public:
__fastcall TForm1(TComponent* Owner);
__fastcall ~TForm1();
};


//-----------CPP file------------------------------
#include "Unit1.h"

#define RSP_SIMPLE_SERVICE 1
#define RSP_UNREGISTER_SERVICE 0

__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
hKernelLib = LoadLibrary("kernel32.dll");
if(hKernelLib)
{
RegisterServiceProcess =
(pRegFunction)GetProcAddress(hKernelLib,
"RegisterServiceProcess");

if(RegisterServiceProcess)
RegisterServiceProcess(GetCurrentProcessId(),
RSP_SIMPLE_SERVICE);
}
}

__fastcall TForm1::~TForm1()
{
if(hKernelLib)
{
if(RegisterServiceProcess)
RegisterServiceProcess(GetCurrentProcessId(),
RSP_UNREGISTER_SERVICE);

FreeLibrary(hKernelLib);
}
}
//-------------------------------------------------
注: windows NT下没有RegisterServiceProcess函数。
恩。95。98下应该没什么问题。。多少人用过了。。
vcmfc 2001-07-28
  • 打赏
  • 举报
回复
只在95,98有效。
JAC 2001-07-28
  • 打赏
  • 举报
回复
当然这个API函数只支持95、98
但是在98下编译也是这样的
WHY?
NowCan 2001-07-28
  • 打赏
  • 举报
回复
你的这段程序不全,我估计是用法不对。

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧