如何使自己的程序在windows登录界面前启动
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如何使自己的程序在windows登录界面前启动?
EXPOR TS NPGetCaps @13
EXPOR TS NPValidDevice @42
EXPOR TS NPLogon @43
EXPOR TS NPLogoff @44
实现这几个函数。在系统中注册NP,一切OK。需要VXD??
95DDK中有,自己看吧。
呵呵,商业秘密?无所谓,本来就不是什么高深的技术。
这样做的程序很多。比如国外有个共享软件叫sntry98什么的,就是这么做的。
当然,我自己的软件也是这么做的。无论什么情况都应该先考虑与现有系统的结合。
既然系统支持为何不使用呢?
lovelinf,你好!
没有亲自尝试的事情对谁都不会是轻易的。
我做过所以知道,因此也没什么大不了的。
我以为程序员水平的高下并不在于掌握一点别人不知道的内幕
技术而看似高人一筹。
如果是对技术感兴趣自己研究倒没什么,可是如果是出于商业目的而作些多余
动作就让人感觉不爽了。因为北大青鸟曾跟我要一段代码。一边利诱一边又说
几十行代码没什么云云,让人feel bad。
/**************************************************************************** *
* FILE: MYNPCAPS.C
*
****************************************************************************/
#include
#include
SPIENTRY NPGetCaps ( DWORD Index )
{
OutputDebugString(" MYNP NPGetCaps--->");
switch ( Index )
{
case WNNC_SPEC_VERSION:
OutputDebugString("Spec version\n");
return 0x00040001;
case WNNC_NET_TYPE:
OutputDebugString("net type\n");
return WNNC_NET_LANMAN;
case WNNC_DRIVER_VERSION: OutputDebugString("Driver version\n");
return 0x00010000;
case WNNC_USER:
OutputDebugString("User \n");
return WNNC_USR_GETUSER | 0;
case WNNC_CONNECTION: OutputDebugString("connection\n");
return WNNC_CON_ADDCONNECTION |
WNNC_CON_CANCELCONNECTION | WNNC_CON_GETCONNECTIONS |
WNNC_CON_GETPERFORMANCE | 0;
case WNNC_DIALOG:
OutputDebugString("Dialog\n");
return WNNC_DLG_FORMATNETWORKNAME | WNNC_DLG_GETRESOURCEPARENT | WNNC_DLG_GETRESOURCEINFORMATION | 0;
case WNNC_ENUMERATION: OutputDebugString("Enumeration\n");
return 0;
return WNNC_ENUM_GLOBAL |
WNNC_ENUM_LOCAL |
WNNC_ENUM_CONTEXT |0;
case WNNC_STAR T:
OutputDebugString("Start\n");
return WNNC_STAR T_DONE;
case WNNC_RESOURCE:
OutputDebugString("Resource\n");
return 0;
case WNNC_AUTHENTICATION: OutputDebugString("Authentication\n");
return WNNC_AUTH_LOGON |
WNNC_AUTH_LOGOFF |
WNNC_AUTH_GETHOMEDIRECTOR Y |
WNNC_AUTH_GETPOLICYPATH |0;
default:
{
char buf[100];
wsprintf(buf,"Default %d \n",Index);
OutputDebugString(buf);
return 0;
}
}
}
/**************************************************************************** *
* FILE: MYNPCONN.C
*
*
****************************************************************************/
#include
#include
SPIENTRY NPAddConnection( HWND hwndOwner,
LPNETRESOURCE lpNetResource,
LPTSTR lpUserID,
LPTSTR lpPassword,
DWORD dwFlags,
LPTSTR lpAccessName,
LPDWORD lpBufferSize,
LPDWORD lpResult)
{
return WN_SUCCESS;
OutputDebugString("MYNP NPAddconnection");
}
SPIENTRY NPCancelConnection( LPTSTR lpName,
BOOL fForce,
DWORD dwFlags)
{
return WN_SUCCESS;
OutputDebugString("MYNP NPCancelConnection\n");
}
SPIENTRY NPGetConnection( LPTSTR lpLocalName,
LPTSTR lpRemoteName,