- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在为项目开发自定义 Windows GINA.DLL 时,碰巧需要为 32 位和 64 位平台构建它在针对 32 位开发和测试并且代码运行良好后,我尝试为 64 位平台构建它,但它产生了以下错误:
Error 7 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 3 Gina
Error 8 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 3 Gina
Error 9 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 3 Gina
Error 10 error C2146: syntax error : missing ';' before identifier 'RealWlxActivateUserShell' d:\projects\prostick\prostick\gina\Trampulim.cpp 3 Gina
Error 11 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 3 Gina
Error 12 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 4 Gina
Error 13 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 4 Gina
Error 14 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 4 Gina
Error 15 error C2146: syntax error : missing ';' before identifier 'RealWlxDisplayLockedNotice' d:\projects\prostick\prostick\gina\Trampulim.cpp 4 Gina
Error 16 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 4 Gina
Error 17 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 5 Gina
Error 18 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 5 Gina
Error 19 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 5 Gina
Error 20 error C2146: syntax error : missing ';' before identifier 'RealWlxDisplaySASNotice' d:\projects\prostick\prostick\gina\Trampulim.cpp 5 Gina
Error 21 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 5 Gina
Error 22 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 6 Gina
Error 23 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 6 Gina
Error 24 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 6 Gina
Error 25 error C2146: syntax error : missing ';' before identifier 'RealWlxGetConsoleSwitchCredentials' d:\projects\prostick\prostick\gina\Trampulim.cpp 6 Gina
Error 26 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 6 Gina
Error 27 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 7 Gina
Error 28 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 7 Gina
Error 29 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 7 Gina
Error 30 error C2146: syntax error : missing ';' before identifier 'RealWlxGetStatusMessage' d:\projects\prostick\prostick\gina\Trampulim.cpp 7 Gina
Error 31 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 7 Gina
Error 32 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 8 Gina
Error 33 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 8 Gina
Error 34 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 8 Gina
Error 35 error C2146: syntax error : missing ';' before identifier 'RealWlxIsLockOk' d:\projects\prostick\prostick\gina\Trampulim.cpp 8 Gina
Error 36 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 8 Gina
Error 37 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 9 Gina
Error 38 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 9 Gina
Error 39 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 9 Gina
Error 40 error C2146: syntax error : missing ';' before identifier 'RealWlxIsLogoffOk' d:\projects\prostick\prostick\gina\Trampulim.cpp 9 Gina
Error 41 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 9 Gina
Error 42 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 10 Gina
Error 43 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 10 Gina
Error 44 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 10 Gina
Error 45 error C2146: syntax error : missing ';' before identifier 'RealWlxLoggedOnSAS' d:\projects\prostick\prostick\gina\Trampulim.cpp 10 Gina
Error 46 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 10 Gina
Error 47 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 11 Gina
Error 48 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 11 Gina
Error 49 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 11 Gina
Error 50 error C2146: syntax error : missing ';' before identifier 'RealWlxLoggedOutSAS' d:\projects\prostick\prostick\gina\Trampulim.cpp 11 Gina
Error 51 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 11 Gina
Error 52 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 12 Gina
Error 53 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 12 Gina
Error 54 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 12 Gina
Error 55 error C2146: syntax error : missing ';' before identifier 'RealWlxLogoff' d:\projects\prostick\prostick\gina\Trampulim.cpp 12 Gina
Error 56 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 12 Gina
Error 57 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 13 Gina
Error 58 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 13 Gina
Error 59 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 13 Gina
Error 60 error C2146: syntax error : missing ';' before identifier 'RealWlxNetworkProviderLoad' d:\projects\prostick\prostick\gina\Trampulim.cpp 13 Gina
Error 61 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 13 Gina
Error 62 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 14 Gina
Error 63 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 14 Gina
Error 64 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 14 Gina
Error 65 error C2146: syntax error : missing ';' before identifier 'RealWlxRemoveStatusMessage' d:\projects\prostick\prostick\gina\Trampulim.cpp 14 Gina
Error 66 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 14 Gina
Error 67 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 15 Gina
Error 68 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 15 Gina
Error 69 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 15 Gina
Error 70 error C2146: syntax error : missing ';' before identifier 'RealWlxScreenSaverNotify' d:\projects\prostick\prostick\gina\Trampulim.cpp 15 Gina
Error 71 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 15 Gina
Error 72 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 16 Gina
Error 73 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 16 Gina
Error 74 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 16 Gina
Error 75 error C2146: syntax error : missing ';' before identifier 'RealWlxShutdown' d:\projects\prostick\prostick\gina\Trampulim.cpp 16 Gina
Error 76 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 16 Gina
Error 77 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 17 Gina
Error 78 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 17 Gina
Error 79 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 17 Gina
Error 80 error C2146: syntax error : missing ';' before identifier 'RealWlxStartApplication' d:\projects\prostick\prostick\gina\Trampulim.cpp 17 Gina
Error 81 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 17 Gina
Error 82 error C2485: 'naked' : unrecognized extended attribute d:\projects\prostick\prostick\gina\Trampulim.cpp 18 Gina
Error 83 error C4235: nonstandard extension used : '_asm' keyword not supported on this architecture d:\projects\prostick\prostick\gina\Trampulim.cpp 18 Gina
Error 84 error C2065: 'jmp' : undeclared identifier d:\projects\prostick\prostick\gina\Trampulim.cpp 18 Gina
Error 85 error C2146: syntax error : missing ';' before identifier 'RealWlxWkstaLockedSAS' d:\projects\prostick\prostick\gina\Trampulim.cpp 18 Gina
Error 86 error C2143: syntax error : missing ';' before '}' d:\projects\prostick\prostick\gina\Trampulim.cpp 18 Gina
我认为问题出在这段代码的两个“裸”地方和内联汇编跳转语句:
#define IMPLEMENT_TRAMPULIM_PROC(ProcName) \
void* Real##ProcName = 0; \
extern "C" int __declspec(naked) ProcName(void) \
{ \
_asm jmp Real##ProcName \
} \
我在此处发布了包含此代码的 2 个文件: https://gist.github.com/emad-elsaid/cca68983951c82eb8e60
我用的是visual studio 2008专业版
请注意,大部分代码不是我写的,我是从一个我不记得的网站上复制的,很遗憾。由于我没有使用 C++ 进行 Windows 编程的丰富经验,因此无法进一步追踪错误。
最佳答案
64 位版本的 MS Visual Studio 编译器不支持内联汇编程序。
如果不了解你为什么要玩蹦床,就很难说你应该做什么(如果有的话)。
关于c++ - 针对 64 位错误编译 GINA.dll,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18704462/
什么是 GINA dll,是否可以使用此 dll 捕获特殊的组合键?我如何在信息亭应用程序中使用它? 最佳答案 GINA 处理 Vista 之前版本的 Windows 机器上交互式登录的部分登录和身份
有谁知道在 Windows XP 上是否有可行的方法以编程方式创建和配置用户帐户,以便在从控制台(无终端服务)登录后启动特定应用程序并将用户“锁定”到该应用程序应用程序? 应该阻止用户对系统做任何其他
在 Windows 中,可以扩展 GINA 模块以支持不同的身份验证方式。例如,您已经可以看到对指纹、智能卡甚至面部识别的支持(就像联想对他们的笔记本电脑所做的那样)。我想要实现的并不像那些方法那么复
我正在使用 C++ win32 API。 我尝试使用 GetUserNameExA() 获取用户详细信息; 我已经将此功能用于系统登录对话框源(GINA)。在我的日志文件中,它给出了 CN=Compu
我搜索了很多地方,我只找到了一个名为 pGINA 的 GINA 替代品,但它是用 C++ 编写的,我根本不知道。 有人知道 C# 或 VB.NET 吗? (我正在编写工作中使用的软件来控制员工的行为)
我正在阅读 Groovy in Action (GINA) 一书。在第 9 章中,有这样的 list : class MyClass { def first = 1 def getSe
在为项目开发自定义 Windows GINA.DLL 时,碰巧需要为 32 位和 64 位平台构建它在针对 32 位开发和测试并且代码运行良好后,我尝试为 64 位平台构建它,但它产生了以下错误: E
如何在不修改 GINA 或只是阻止任务管理器的情况下禁用 Ctrl+Alt+Delete 序列? 最佳答案 http://www.codeproject.com/KB/system/preventcl
您好,我正在尝试通过 Gina 在某些情况下更改 Windows xp ctrl alt del 键的行为。具体来说,我想解除在遗留代码中实现的 ctrl alt del 上出现的自定义对话框,并让我
我是一名优秀的程序员,十分优秀!