//防火墙本质是你开辟一个端口侦听,即作为服务器的时候,系统为了防止对它造成伤害,特意开出的隔离墙。
//所以如果希望系统不自动弹出询问添加防火墙,就应该在端口侦听的地方提前把exe文件的全路径加入防火墙规则。
//win7系统默认添加防火墙规则名称是 资源视图-Version-FileDescription
#include "stdafx.h"#include <windows.h>
#include <stdio.h>
#include <netfw.h>#pragma comment( lib, "ole32.lib" )
#pragma comment( lib, "oleaut32.lib" )// Forward declarations
HRESULT     WFCOMInitialize(INetFwPolicy2** ppNetFwPolicy2);int __cdecl main()
{HRESULT hrComInit = S_OK;HRESULT hr = S_OK;INetFwRules *pFwRules = NULL;INetFwRule *pFwRule = NULL;INetFwRule *pTmpFwRule = NULL;VARIANT_BOOL isServiceRestricted = FALSE;INetFwPolicy2 *pNetFwPolicy2 = NULL;INetFwServiceRestriction *pFwServiceRestriction = NULL;// The Service and App name to useBSTR bstrServiceName = SysAllocString(L"SampleService");   // provide a valid service short name here.BSTR bstrAppName = SysAllocString(L"E:\\DownCode\\13114500790\\ServiceTest.exe");// The rule name, description should be provided as indirect strings '@appfullpath,-resource index' for// localization purposes. // Using the strings directly for illustration here.BSTR bstrRuleName = SysAllocString(L"Allow TCP 12345 to sampleservice");BSTR bstrRuleDescription = SysAllocString(L"Allow only TCP 12345 traffic to sampleservice service, block everything else");BSTR bstrRuleLPorts = SysAllocString(L"12345");// Error checking for BSTR allocationsif (NULL == bstrServiceName) { printf("Failed to allocate bstrServiceName\n"); goto Cleanup; }if (NULL == bstrAppName) { printf("Failed to allocate bstrAppName\n"); goto Cleanup; }if (NULL == bstrRuleName) { printf("Failed to allocate bstrRuleName\n"); goto Cleanup; }if (NULL == bstrRuleDescription) { printf("Failed to allocate bstrRuleDescription\n"); goto Cleanup; }if (NULL == bstrRuleLPorts) { printf("Failed to allocate bstrRuleLPorts\n"); goto Cleanup; }// Initialize COM.hrComInit = CoInitializeEx(0,COINIT_APARTMENTTHREADED);// Ignore RPC_E_CHANGED_MODE; this just means that COM has already been// initialized with a different mode. Since we don't care what the mode is,// we'll just use the existing mode.if (hrComInit != RPC_E_CHANGED_MODE){if (FAILED(hrComInit)){printf("CoInitializeEx failed: 0x%08lx\n", hrComInit);goto Cleanup;}}// Retrieve INetFwPolicy2hr = WFCOMInitialize(&pNetFwPolicy2);if (FAILED(hr)){goto Cleanup;}// Retrieve INetFwServiceRestrictionhr = pNetFwPolicy2->get_ServiceRestriction(&pFwServiceRestriction);if (FAILED(hr)){printf("get_ServiceRestriction failed: 0x%08lx\n", hr);goto Cleanup;}// Restrict the sampleservice Service.// This will add two WSH rules -//    - a default block all inbound traffic to the service//    - a default block all outbound traffic from the service/*hr = pFwServiceRestriction->RestrictService(bstrServiceName, bstrAppName, TRUE, FALSE);if (FAILED(hr)){printf("RestrictService failed: 0x%08lx\nMake sure you specified a valid service shortname.\n", hr);goto Cleanup;}*/// If the service does not send/receive any network traffic then you are done. You can skip adding the allow WSH rules below.// If the service requires sending/receiving certain traffic, then add 'allow' WSH rules as follows// Get the collections of Windows Service Hardening networking rules firsthr = pNetFwPolicy2->get_Rules(&pFwRules);//hr = pFwServiceRestriction->get_Rules(&pFwRules);if (FAILED(hr)){wprintf(L"get_Rules failed: 0x%08lx\n", hr);goto Cleanup;}// Add inbound WSH allow rule for allowing TCP 12345 to the service// Create a new Rule object.hr = CoCreateInstance(__uuidof(NetFwRule),NULL,CLSCTX_INPROC_SERVER,__uuidof(INetFwRule),(void**)&pFwRule);if (FAILED(hr)){printf("CoCreateInstance for Firewall Rule failed: 0x%08lx\n", hr);goto Cleanup;}// Populate the Rule Namehr = pFwRule->put_Name(bstrRuleName);if (FAILED(hr)){printf("put_Name failed: 0x%08lx\n", hr);goto Cleanup;}// Populate the Rule Descriptionhr = pFwRule->put_Description(bstrRuleDescription);if (FAILED(hr)){printf("put_Description failed: 0x%08lx\n", hr);goto Cleanup;}// Populate the Application Namehr = pFwRule->put_ApplicationName(bstrAppName);if (FAILED(hr)){printf("put_ApplicationName failed: 0x%08lx\n", hr);goto Cleanup;}// Populate the Service Namehr = pFwRule->put_ServiceName(bstrServiceName);if (FAILED(hr)){printf("put_ServiceName failed: 0x%08lx\n", hr);goto Cleanup;}// Populate the Protocolhr = pFwRule->put_Protocol(NET_FW_IP_PROTOCOL_TCP);if (FAILED(hr)){printf("put_Protocol failed: 0x%08lx\n", hr);goto Cleanup;}// Populate the Local Portshr = pFwRule->put_LocalPorts(bstrRuleLPorts);if (FAILED(hr)){printf("put_LocalPorts failed: 0x%08lx\n", hr);goto Cleanup;}// Populate the rule Actionhr = pFwRule->put_Action(NET_FW_ACTION_ALLOW);if (FAILED(hr)){printf("put_Action failed: 0x%08lx\n", hr);goto Cleanup;}// Populate the rule Enabled settinghr = pFwRule->put_Enabled(VARIANT_TRUE);if (FAILED(hr)){printf("put_Enabled failed: 0x%08lx\n", hr);goto Cleanup;}//------------------------------------------------------------------------------------------BSTR bstrPPLiveRuleName = SysAllocString(L"PPLive");hr = pFwRules->Item(bstrRuleName, &pTmpFwRule);/*if (FAILED(hr)){printf("Item failed: 0x%08lx\n", hr);goto Cleanup;}*/if (pTmpFwRule != NULL){printf("规则已存在!\n");VARIANT_BOOL flag;pTmpFwRule->get_Enabled(&flag);if (!flag) //如果规则没打开{pTmpFwRule->put_Enabled(VARIANT_TRUE); //打开规则}int a;a = 3;goto Cleanup;}// Add the Rule to the collection of Windows Service Hardening(WSH) ruleshr = pFwRules->Add(pFwRule);if (FAILED(hr)){printf("Firewall Rule Add failed: 0x%08lx\n", hr);goto Cleanup;}Sleep(3000);// Check to see if the Service is Restrictedhr = pFwServiceRestriction->ServiceRestricted(bstrServiceName, bstrAppName, &isServiceRestricted);if (FAILED(hr)){printf("ServiceRestricted failed: 0x%08lx\n", hr);goto Cleanup;}if (isServiceRestricted){printf ("Service was successfully restricted in WSH.\nExcept for TCP 12345 inbound traffic and its responses, all other inbound and outbound connections to and from the service will be blocked.\n");}else{printf ("The Service could not be properly restricted.\n");}Cleanup:// Free BSTR'sSysFreeString(bstrServiceName);SysFreeString(bstrAppName);SysFreeString(bstrRuleName);SysFreeString(bstrRuleDescription);SysFreeString(bstrRuleLPorts);SysFreeString(bstrPPLiveRuleName);// Release the INetFwRule objectif (pFwRule != NULL){pFwRule->Release();}// Release the INetFwRules objectif (pFwRules != NULL){pFwRules->Release();}// Release INetFwPolicy2if (pNetFwPolicy2 != NULL){pNetFwPolicy2->Release();}// Uninitialize COM.if (SUCCEEDED(hrComInit)){CoUninitialize();}getchar();return 0;
}// Instantiate INetFwPolicy2
HRESULT WFCOMInitialize(INetFwPolicy2** ppNetFwPolicy2)
{HRESULT hr = S_OK;hr = CoCreateInstance(__uuidof(NetFwPolicy2), NULL, CLSCTX_INPROC_SERVER, __uuidof(INetFwPolicy2), (void**)ppNetFwPolicy2);if (FAILED(hr)){printf("CoCreateInstance for INetFwPolicy2 failed: 0x%08lx\n", hr);goto Cleanup;        }Cleanup:return hr;
}

XP:

#include <windows.h>
#include <crtdbg.h>
#include <netfw.h>
#include <objbase.h>
#include <oleauto.h>
#include <stdio.h>#pragma comment( lib, "ole32.lib" )
#pragma comment( lib, "oleaut32.lib" )HRESULT WindowsFirewallInitialize(OUT INetFwProfile** fwProfile)
{HRESULT hr = S_OK;INetFwMgr* fwMgr = NULL;INetFwPolicy* fwPolicy = NULL;_ASSERT(fwProfile != NULL);*fwProfile = NULL;// Create an instance of the firewall settings manager.hr = CoCreateInstance(__uuidof(NetFwMgr),NULL,CLSCTX_INPROC_SERVER,__uuidof(INetFwMgr),(void**)&fwMgr);if (FAILED(hr)){printf("CoCreateInstance failed: 0x%08lx\n", hr);goto error;}// Retrieve the local firewall policy.hr = fwMgr->get_LocalPolicy(&fwPolicy);if (FAILED(hr)){printf("get_LocalPolicy failed: 0x%08lx\n", hr);goto error;}// Retrieve the firewall profile currently in effect.hr = fwPolicy->get_CurrentProfile(fwProfile);if (FAILED(hr)){printf("get_CurrentProfile failed: 0x%08lx\n", hr);goto error;}error:// Release the local firewall policy.if (fwPolicy != NULL){fwPolicy->Release();}// Release the firewall settings manager.if (fwMgr != NULL){fwMgr->Release();}return hr;
}void WindowsFirewallCleanup(IN INetFwProfile* fwProfile)
{// Release the firewall profile.if (fwProfile != NULL){fwProfile->Release();}
}HRESULT WindowsFirewallIsOn(IN INetFwProfile* fwProfile, OUT BOOL* fwOn)
{HRESULT hr = S_OK;VARIANT_BOOL fwEnabled;_ASSERT(fwProfile != NULL);_ASSERT(fwOn != NULL);*fwOn = FALSE;// Get the current state of the firewall.hr = fwProfile->get_FirewallEnabled(&fwEnabled);if (FAILED(hr)){printf("get_FirewallEnabled failed: 0x%08lx\n", hr);goto error;}// Check to see if the firewall is on.if (fwEnabled != VARIANT_FALSE){*fwOn = TRUE;printf("The firewall is on.\n");}else{printf("The firewall is off.\n");}error:return hr;
}HRESULT WindowsFirewallTurnOn(IN INetFwProfile* fwProfile)
{HRESULT hr = S_OK;BOOL fwOn;_ASSERT(fwProfile != NULL);// Check to see if the firewall is off.hr = WindowsFirewallIsOn(fwProfile, &fwOn);if (FAILED(hr)){printf("WindowsFirewallIsOn failed: 0x%08lx\n", hr);goto error;}// If it is, turn it on.if (!fwOn){// Turn the firewall on.hr = fwProfile->put_FirewallEnabled(VARIANT_TRUE);if (FAILED(hr)){printf("put_FirewallEnabled failed: 0x%08lx\n", hr);goto error;}printf("The firewall is now on.\n");}error:return hr;
}HRESULT WindowsFirewallTurnOff(IN INetFwProfile* fwProfile)
{HRESULT hr = S_OK;BOOL fwOn;_ASSERT(fwProfile != NULL);// Check to see if the firewall is on.hr = WindowsFirewallIsOn(fwProfile, &fwOn);if (FAILED(hr)){printf("WindowsFirewallIsOn failed: 0x%08lx\n", hr);goto error;}// If it is, turn it off.if (fwOn){// Turn the firewall off.hr = fwProfile->put_FirewallEnabled(VARIANT_FALSE);if (FAILED(hr)){printf("put_FirewallEnabled failed: 0x%08lx\n", hr);goto error;}printf("The firewall is now off.\n");}error:return hr;
}HRESULT WindowsFirewallAppIsEnabled(IN INetFwProfile* fwProfile,IN const wchar_t* fwProcessImageFileName,OUT BOOL* fwAppEnabled)
{HRESULT hr = S_OK;BSTR fwBstrProcessImageFileName = NULL;VARIANT_BOOL fwEnabled;INetFwAuthorizedApplication* fwApp = NULL;INetFwAuthorizedApplications* fwApps = NULL;_ASSERT(fwProfile != NULL);_ASSERT(fwProcessImageFileName != NULL);_ASSERT(fwAppEnabled != NULL);*fwAppEnabled = FALSE;// Retrieve the authorized application collection.hr = fwProfile->get_AuthorizedApplications(&fwApps);if (FAILED(hr)){printf("get_AuthorizedApplications failed: 0x%08lx\n", hr);goto error;}// Allocate a BSTR for the process image file name.fwBstrProcessImageFileName = SysAllocString(fwProcessImageFileName);if (fwBstrProcessImageFileName == NULL){hr = E_OUTOFMEMORY;printf("SysAllocString failed: 0x%08lx\n", hr);goto error;}// Attempt to retrieve the authorized application.hr = fwApps->Item(fwBstrProcessImageFileName, &fwApp);if (SUCCEEDED(hr)){// Find out if the authorized application is enabled.hr = fwApp->get_Enabled(&fwEnabled);if (FAILED(hr)){printf("get_Enabled failed: 0x%08lx\n", hr);goto error;}if (fwEnabled != VARIANT_FALSE){// The authorized application is enabled.*fwAppEnabled = TRUE;printf("Authorized application %lS is enabled in the firewall.\n",fwProcessImageFileName);}else{printf("Authorized application %lS is disabled in the firewall.\n",fwProcessImageFileName);}}else{// The authorized application was not in the collection.hr = S_OK;printf("Authorized application %lS is disabled in the firewall.\n",fwProcessImageFileName);}error:// Free the BSTR.SysFreeString(fwBstrProcessImageFileName);// Release the authorized application instance.if (fwApp != NULL){fwApp->Release();}// Release the authorized application collection.if (fwApps != NULL){fwApps->Release();}return hr;
}HRESULT WindowsFirewallAddApp(IN INetFwProfile* fwProfile,IN const wchar_t* fwProcessImageFileName,IN const wchar_t* fwName)
{HRESULT hr = S_OK;BOOL fwAppEnabled;BSTR fwBstrName = NULL;BSTR fwBstrProcessImageFileName = NULL;INetFwAuthorizedApplication* fwApp = NULL;INetFwAuthorizedApplications* fwApps = NULL;_ASSERT(fwProfile != NULL);_ASSERT(fwProcessImageFileName != NULL);_ASSERT(fwName != NULL);// First check to see if the application is already authorized.hr = WindowsFirewallAppIsEnabled(fwProfile,fwProcessImageFileName,&fwAppEnabled);if (FAILED(hr)){printf("WindowsFirewallAppIsEnabled failed: 0x%08lx\n", hr);goto error;}// Only add the application if it isn't already authorized.if (!fwAppEnabled){// Retrieve the authorized application collection.hr = fwProfile->get_AuthorizedApplications(&fwApps);if (FAILED(hr)){printf("get_AuthorizedApplications failed: 0x%08lx\n", hr);goto error;}// Create an instance of an authorized application.hr = CoCreateInstance(__uuidof(NetFwAuthorizedApplication),NULL,CLSCTX_INPROC_SERVER,__uuidof(INetFwAuthorizedApplication),(void**)&fwApp);if (FAILED(hr)){printf("CoCreateInstance failed: 0x%08lx\n", hr);goto error;}// Allocate a BSTR for the process image file name.fwBstrProcessImageFileName = SysAllocString(fwProcessImageFileName);if (fwBstrProcessImageFileName == NULL){hr = E_OUTOFMEMORY;printf("SysAllocString failed: 0x%08lx\n", hr);goto error;}// Set the process image file name.hr = fwApp->put_ProcessImageFileName(fwBstrProcessImageFileName);if (FAILED(hr)){printf("put_ProcessImageFileName failed: 0x%08lx\n", hr);goto error;}// Allocate a BSTR for the application friendly name.fwBstrName = SysAllocString(fwName);if (SysStringLen(fwBstrName) == 0){hr = E_OUTOFMEMORY;printf("SysAllocString failed: 0x%08lx\n", hr);goto error;}// Set the application friendly name.hr = fwApp->put_Name(fwBstrName);if (FAILED(hr)){printf("put_Name failed: 0x%08lx\n", hr);goto error;}// Add the application to the collection.hr = fwApps->Add(fwApp);if (FAILED(hr)){printf("Add failed: 0x%08lx\n", hr);goto error;}printf("Authorized application %lS is now enabled in the firewall.\n",fwProcessImageFileName);}error:// Free the BSTRs.SysFreeString(fwBstrName);SysFreeString(fwBstrProcessImageFileName);// Release the authorized application instance.if (fwApp != NULL){fwApp->Release();}// Release the authorized application collection.if (fwApps != NULL){fwApps->Release();}return hr;
}HRESULT WindowsFirewallPortIsEnabled(IN INetFwProfile* fwProfile,IN LONG portNumber,IN NET_FW_IP_PROTOCOL ipProtocol,OUT BOOL* fwPortEnabled)
{HRESULT hr = S_OK;VARIANT_BOOL fwEnabled;INetFwOpenPort* fwOpenPort = NULL;INetFwOpenPorts* fwOpenPorts = NULL;_ASSERT(fwProfile != NULL);_ASSERT(fwPortEnabled != NULL);*fwPortEnabled = FALSE;// Retrieve the globally open ports collection.hr = fwProfile->get_GloballyOpenPorts(&fwOpenPorts);if (FAILED(hr)){printf("get_GloballyOpenPorts failed: 0x%08lx\n", hr);goto error;}// Attempt to retrieve the globally open port.hr = fwOpenPorts->Item(portNumber, ipProtocol, &fwOpenPort);if (SUCCEEDED(hr)){// Find out if the globally open port is enabled.hr = fwOpenPort->get_Enabled(&fwEnabled);if (FAILED(hr)){printf("get_Enabled failed: 0x%08lx\n", hr);goto error;}if (fwEnabled != VARIANT_FALSE){// The globally open port is enabled.*fwPortEnabled = TRUE;printf("Port %ld is open in the firewall.\n", portNumber);}else{printf("Port %ld is not open in the firewall.\n", portNumber);}}else{// The globally open port was not in the collection.hr = S_OK;printf("Port %ld is not open in the firewall.\n", portNumber);}error:// Release the globally open port.if (fwOpenPort != NULL){fwOpenPort->Release();}// Release the globally open ports collection.if (fwOpenPorts != NULL){fwOpenPorts->Release();}return hr;
}HRESULT WindowsFirewallPortAdd(IN INetFwProfile* fwProfile,IN LONG portNumber,IN NET_FW_IP_PROTOCOL ipProtocol,IN const wchar_t* name)
{HRESULT hr = S_OK;BOOL fwPortEnabled;BSTR fwBstrName = NULL;INetFwOpenPort* fwOpenPort = NULL;INetFwOpenPorts* fwOpenPorts = NULL;_ASSERT(fwProfile != NULL);_ASSERT(name != NULL);// First check to see if the port is already added.hr = WindowsFirewallPortIsEnabled(fwProfile,portNumber,ipProtocol,&fwPortEnabled);if (FAILED(hr)){printf("WindowsFirewallPortIsEnabled failed: 0x%08lx\n", hr);goto error;}// Only add the port if it isn't already added.if (!fwPortEnabled){// Retrieve the collection of globally open ports.hr = fwProfile->get_GloballyOpenPorts(&fwOpenPorts);if (FAILED(hr)){printf("get_GloballyOpenPorts failed: 0x%08lx\n", hr);goto error;}// Create an instance of an open port.hr = CoCreateInstance(__uuidof(NetFwOpenPort),NULL,CLSCTX_INPROC_SERVER,__uuidof(INetFwOpenPort),(void**)&fwOpenPort);if (FAILED(hr)){printf("CoCreateInstance failed: 0x%08lx\n", hr);goto error;}// Set the port number.hr = fwOpenPort->put_Port(portNumber);if (FAILED(hr)){printf("put_Port failed: 0x%08lx\n", hr);goto error;}// Set the IP protocol.hr = fwOpenPort->put_Protocol(ipProtocol);if (FAILED(hr)){printf("put_Protocol failed: 0x%08lx\n", hr);goto error;}// Allocate a BSTR for the friendly name of the port.fwBstrName = SysAllocString(name);if (SysStringLen(fwBstrName) == 0){hr = E_OUTOFMEMORY;printf("SysAllocString failed: 0x%08lx\n", hr);goto error;}// Set the friendly name of the port.hr = fwOpenPort->put_Name(fwBstrName);if (FAILED(hr)){printf("put_Name failed: 0x%08lx\n", hr);goto error;}// Opens the port and adds it to the collection.hr = fwOpenPorts->Add(fwOpenPort);if (FAILED(hr)){printf("Add failed: 0x%08lx\n", hr);goto error;}printf("Port %ld is now open in the firewall.\n", portNumber);}error:// Free the BSTR.SysFreeString(fwBstrName);// Release the open port instance.if (fwOpenPort != NULL){fwOpenPort->Release();}// Release the globally open ports collection.if (fwOpenPorts != NULL){fwOpenPorts->Release();}return hr;
}int  main(int argc, TCHAR* argv[])
{HRESULT hr = S_OK;HRESULT comInit = E_FAIL;INetFwProfile* fwProfile = NULL;// Initialize COM.comInit = CoInitializeEx(0,COINIT_APARTMENTTHREADED | COINIT_DISABLE_OLE1DDE);// Ignore RPC_E_CHANGED_MODE; this just means that COM has already been// initialized with a different mode. Since we don't care what the mode is,// we'll just use the existing mode.if (comInit != RPC_E_CHANGED_MODE){hr = comInit;if (FAILED(hr)){printf("CoInitializeEx failed: 0x%08lx\n", hr);goto error;}}INetFwRules *fwRules;// Retrieve the firewall profile currently in effect.hr = WindowsFirewallInitialize(&fwProfile);if (FAILED(hr)){printf("WindowsFirewallInitialize failed: 0x%08lx\n", hr);goto error;}// Turn off the firewall.hr = WindowsFirewallTurnOff(fwProfile);if (FAILED(hr)){printf("WindowsFirewallTurnOff failed: 0x%08lx\n", hr);goto error;}// Turn on the firewall.hr = WindowsFirewallTurnOn(fwProfile);if (FAILED(hr)){printf("WindowsFirewallTurnOn failed: 0x%08lx\n", hr);goto error;}// Add Windows Messenger to the authorized application collection.hr = WindowsFirewallAddApp(fwProfile,L"E:\\Code_Factory\\NetDemo\\NetDemo V1.0-UDP\\Release\\NetDemo.exe",L"NetDemo");if (FAILED(hr)){printf("WindowsFirewallAddApp failed: 0x%08lx\n", hr);goto error;}// Add TCP::80 to list of globally open ports.hr = WindowsFirewallPortAdd(fwProfile, 80, NET_FW_IP_PROTOCOL_TCP, L"WWW");if (FAILED(hr)){printf("WindowsFirewallPortAdd failed: 0x%08lx\n", hr);goto error;}error:// Release the firewall profile.WindowsFirewallCleanup(fwProfile);// Uninitialize COM.if (SUCCEEDED(comInit)){CoUninitialize();}getchar();return 0;
}

VC++ 防火墙 Win7 XP MFC相关推荐

  1. [转]VC无负担实现XP风格界面

    VC无负担实现XP风格界面 有件事情必须说一下,按照上面的方法,test.exe必须先调用InitCommonControls函数(已经废除,不建议使用)或者InitCommonControlsEx函 ...

  2. VC无负担实现XP风格界面

    关于让自己的程序界面实现XP风格这个问题,在网上的讨论很多,大多数的作法都是写一个.manifest文件,然后将文件名改一下,比如.exe文件为test.exe,就将这个.manifest文件改名成t ...

  3. vc中实现xp风格界面

    关于让自己的程序界面实现XP风格这个问题,在网上的讨论很多,大多数的作法都是写一个.manifest文件,然后将文件名改一下,比如.exe文件为test.exe,就将这个.manifest文件改名成t ...

  4. VC无负担实现XP风格界面(转)

     VC无负担实现XP风格界面 <script>function StorePage(){d=document;t=d.selection?(d.selection.type!='None' ...

  5. 使用VC++6.0创建MFC对话框程序

    使用VC++6.0创建MFC对话框程序

  6. 笔记本电脑u盘装linux系统,用U盘给Linux笔记本电脑重装Win7/XP系统的图文教程

    用Win$Man来安装Win7 如果要安装Win7,那么在第四步虚拟光驱要加载的就是Win7的镜像文件.当然,如果不想执行第四步,可以直接把Win7安装光盘中"sources"文件 ...

  7. VC++ 6.0 C8051F340 MFC programming note

    /*************************************************************************************** VC++ 6.0 C8 ...

  8. Win7\xp添加虚拟网Microsoft Loopback Adapter

    Win7\xp添加虚拟网Microsoft Loopback Adapter Microsoft Loopback Adapter (微软回环网卡),做为IT网络的人员应该都知道是什么吧.安装一个 l ...

  9. 服务器共享文件有访问台数限制,Win7/xp系统下共享文件夹最大连接数限制怎么解除...

    很多用户都喜欢用win7系统来作为文件共享服务器,然后将文件夹共享方便用户访问,不过win7和xp系统都有一样的问题,就是有最大连接数限制,一个共享文件夹最多只能被20个用户同时访问,而如果超出20人 ...

最新文章

  1. mapbox 修改初始位置_3dmax样条线的创建和修改
  2. 我也来推荐一个强大的flash应用
  3. android点击左上角划出,使用Android中的Path和RectF在左上角右上角左下角绘制圆角...
  4. Java自动计算迷宫正确路线算法源码
  5. 阿里云获工信部CDN业务经营许可 云计算业内资质最全
  6. c语言gs迭代法解方程,ex1_7-GS迭代法例题源程序及注释.pdf
  7. android 传输日期,Android 跟日期和时间有关的操作
  8. pythontkinter使按钮失效_python2.7为什么点击了quot;开始quot;按钮后,tkinter上的按钮,图中红色部分,再也点不动了? - SegmentFault 思否...
  9. 学科实践活动感悟50字_连江县高中综合实践活动学科马春晖名师工作室开展送教送培活动...
  10. jdk下载和安装教程
  11. PPT模板 | 红色学术风论文答辩PPT模板
  12. 移动硬盘计算机限制打不开,移动硬盘突然打不开并且要求格式化怎么解决
  13. c#控件弹幕效果_求C#弹幕游戏弹幕的代码
  14. python 232串口通信
  15. 百度paddlepaddle入门讲解第一周内容
  16. 【AWS+Drupal应用案例】如何让一个千万级流量网站从一直挂机到起死回生?
  17. 知其然(3)*.java文件中可以包含多个类,但最多只能有一个类,其修饰符为public
  18. python 会计分录模板_财务月末结账会计分录
  19. Mysql数据库计算时间差(天,时,分,秒)
  20. 一个轻量级的RGB颜色选择器--jscolor

热门文章

  1. 《计算广告》学习笔记(二)
  2. 虚拟机附加dnds服务器,kaks和dnds是什么?
  3. 工程学导论的学习感悟
  4. 真的!!!两行css代码实现瀑布流,html,css最简单的瀑布流实现方式且没有缺点!...
  5. QCA switch芯片配置说明
  6. Imagepy图像处理框架中neighbors函数的探索之旅
  7. 在windows和Deepin上安装Fedora33-KDE:一波三折、第九次成功的嘤嘤怪
  8. led照明灯哪个牌子的比较好?质量超好的LED护眼台灯推荐
  9. 富豪版末日避难所曝光:导弹发射井改装,内部极奢华
  10. 四、【入门篇】官方LIB库、位带操作