小程序-下载bing网站壁纸并设为桌面

news/2024/5/10 4:52:10/文章来源:https://blog.csdn.net/weixin_30325071/article/details/99296109

目的:下载cn.bing.com或http://www.bing.com/的背景图片,并将其设为壁纸

思路:根据用户输入的地址,首先下载对应网址的页面并解析其中的图片地址。接着下载图片,调用系统api将其设为壁纸。其中的下载都使用socket来实现http的get请求。

出现的问题和困难之处:

  1. http://www.bing.com/对于没有包含特定cookie的请求会将其重定向到cn.bing.com。
  2. 找到图片的地址
  3. 如何设定其为壁纸

解决方法:

  1. 在get命令中添加cookie值
  2. 使用了string的find函数(可能更好的是正则表达式吧)
  3. 使用IActiveDesktop的SetWallpaper方法(第一个参数需要时宽字符的字符串,com编程相关?)

相关代码:

  

 

ContractedBlock.gifExpandedBlockStart.gifCode
 1#include <WinInet.h>//需在下面.h之前
 2#include <shlobj.h>
 3
 4//char to wchar
 5wchar_t *charToW(const char *str)
 6ExpandedBlockStart.gifContractedBlock.gif{
 7 int nc = strlen(str);
 8 int n = (size_t)MultiByteToWideChar(CP_ACP, 0, str, nc, NULL, 0);
 9 wchar_t *re = NULL;
10 re = new wchar_t[n + 1];
11 if(NULL != re)
12ExpandedSubBlockStart.gifContractedSubBlock.gif {
13  MultiByteToWideChar(CP_ACP, 0, str, nc, re, n);
14  re[n] = 0;
15 }

16 return re;
17}

18
19//设置壁纸
20bool changeWallPaper(const char *pic)
21ExpandedBlockStart.gifContractedBlock.gif{
22 wchar_t *= charToW(pic);
23 //SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, w, SPIF_UPDATEINIFILE);
24 HRESULT hr;
25 IActiveDesktop *desk;
26 CoInitialize(NULL);
27 hr = CoCreateInstance(CLSID_ActiveDesktop, NULL, CLSCTX_INPROC_SERVER, IID_IActiveDesktop, (void **)&desk);
28 if (S_OK == hr)
29ExpandedSubBlockStart.gifContractedSubBlock.gif {
30  WALLPAPEROPT opt;
31  opt.dwSize = sizeof(WALLPAPEROPT);
32  opt.dwStyle = WPSTYLE_STRETCH;
33  desk->SetWallpaper(w, 0);
34  desk->SetWallpaperOptions(&opt, 0);
35  desk->ApplyChanges(AD_APPLY_ALL);
36  desk->Release();
37 }

38 CoUninitialize();
39 if(NULL != w) delete[] w;
40 return true;
41}

42

 

 

使用方法:

    在命令行下直接敲入命令(下载http://www.bing.com/的壁纸)或者 “命令 cn.bing.com” 来下载cn.bing.com的壁纸

下载地址:changewallpaper

转载于:https://www.cnblogs.com/lmatt/archive/2009/10/23/1588812.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_740889.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LNMP网站架构方案分析

2019独角兽企业重金招聘Python工程师标准>>> LNMP&#xff08;Linux-Nginx-MySQL-PHP&#xff09;网站架构是目前国际流行的Web框架&#xff0c;该框架包括&#xff1a;Linux操作系统&#xff0c;Nginx网络服务器&#xff0c;MySQL数据库&#xff0c;PHP编程语言&am…

php网站留言,php实现网站留言板功能

php实现网站留言板功能发布于 2016-01-14 09:57:49 | 1045 次阅读 | 评论: 10 | 来源: 网友投递PHP开源脚本语言PHP(外文名: Hypertext Preprocessor&#xff0c;中文名&#xff1a;“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点&#xff0c;…

拍卖网站开发新风潮?阿里的拍卖平台正在这么做

如今&#xff0c;线上拍卖成为新的风潮、司法拍卖火爆&#xff0c;网络拍卖将成为下一个电商市场&#xff0c;拍卖网站开发新风潮。 学霸的高分笔记值多少钱?1897年的可口可乐运货单你感兴趣吗?井柏然写的三行情书怎么卖?一个大学生把他的脑门当作广告位&#xff0c;你会出价…

html链接防抓取了,为防止别人轻易抓取自己网站页面,对自己网站JS进行16进制加密...

网站开发人员开发好网页在网上发布后&#xff0c;经常遇到自己辛苦开发好的静态页面被别人轻易的copy去。这时候就需要我们对网站采取一些加密措施&#xff0c;其中有一个方式&#xff1a;加密js文件&#xff01;对静态页面(html)加载的js引用文件进行加密&#xff0c;一般加密…

40水平滚动网站推荐-视差背景效果的运用(下篇)

使用视差滚动效果做网站的第一个感觉是设计网站的这个工程师水平不一般&#xff0c;做出来的网站是那么的大气&#xff0c;吸引人&#xff0c;每次我遇到这样的网站我都会从头到尾挨个点击一遍&#xff0c;他们的每个功能&#xff0c;每个细节都是那么的完美&#xff0c;往往我…

uniapp中qrcode生成二维码后传的参数不见了_【网站】你们要的二维码生成工具!...

南郡丨二维码工具将文章内容、网址链接、图片、文件等生成二维码以方便用户直接扫码查阅&#xff0c;也是我们必须掌握的技能&#xff0c;关于二维码生成工具&#xff0c;大家可以试试下面这几款工具。草料二维码丨https://cli.im/草料是大家最为熟知的二维码生成器&#xff0c…

mongoose 批量修改字段_WP菜鸟建站28:wordpress网站改域名后,批量修改图片地址...

一般情况下&#xff0c;对于一个wordpress网站的站长来说&#xff0c;不会轻易地更换自己网站的域名。因为&#xff0c;域名就相当于一个wordpress网站的身份证号&#xff0c;用户可以通过这个域名&#xff0c;就可以对号入座地找到你的网站。再一个原因&#xff0c;如果更换域…

网站优化怎样的外链能轻松收录,网站外链优化攻略

有些事情&#xff0c;让你感到很无奈&#xff0c;网站外链优化也是如此&#xff0c;往往那些很容易发布网站外链的地方&#xff0c;价值不大&#xff0c;而不容易发布外链的地方&#xff0c;一旦发布上去了&#xff0c;效果胜过几十条甚至更多的外链&#xff0c;而且可以轻松让…

Java生成sitemap网站地图

访问我的博客 sitemap 是什么&#xff1f;对应没有接触过网站 SEO 的同学可能不知道&#xff0c;这里引用一下百度站长的一段解释。 Sitemap&#xff08;即站点地图&#xff09;就是您网站上各网页的列表。创建并提交Sitemap有助于百度发现并了解您网站上的所有网页。您还可以使…

解决ASP.NET网站发布问题

目录 前言 开始 aspx.cs文件放到单独的类库项目 一个可选择勾选页面的发布工具&#xff1a;LimusicAddin 前言 Asp.net 发布分为&#xff1a;动态编译和预编译。预编译又分为&#xff1a;In Place Pre-compilation 和 Pre-compilation for Deployment。关于asp.net编译&#xf…

弊端重重的传统影楼,优兔家摄影网站赋予新生机

关键词&#xff1a;网站建设&#xff0c;H5响应式网站&#xff0c;摄影网站建设 关于优兔家 U2&#xff08;优兔家&#xff09;新派视觉摄影&#xff0c;由资深广告创意人主理&#xff0c;是一个善于挖掘个人美态的摄影团体&#xff0c;为用户提供状容造型、专业摄影、后期润饰…

html amp css自学网站,HTMLamp;CSS——网站注册页面,

HTML&CSS——网站注册页面&#xff0c;1、表单标签所有需要提交到服务器端的表单项必须使用括起来&#xff01;form 标签属性&#xff1a; action,整个表单提交的位置(可以是一个页面&#xff0c;也可以是一个后台 java 代码)method,表单提交的方式(get/post/delete……等…

HTTrack - 克隆任意网站

HTTrack可以克隆指定网站&#xff0d;把整个网站下载到本地。 可以用在离线浏览上&#xff0c;也可以用来收集信息&#xff08;甚至有网站使用隐藏的密码文件&#xff09;。 一些仿真度极高的伪网站&#xff08;为了骗取用户密码&#xff09;&#xff0c;也是使用类似工具做的。…

第13节 IIS之WEB服务器—用于发布网站

IIS之WEB网站发布服务器0 引言1 WEB服务器相关概念2 部署WEB服务器—以win2003为例2.1 安装WEB服务器软件2.2 发布静态网站2.3 发布动态网站3 一台服务器发布多个web网站—以win2003为例3.1 方法1&#xff1a;增加多个IP地址3.2 方法2&#xff1a;设置不同端口号3.3 方法3&…

iframe嵌入其他网站,如何自适应高度

终于有一周时间&#xff0c;工作不那么忙了&#xff0c;腾出手来总结下工作过程中学到的知识。 每天遇到新问题&#xff0c;解决新问题&#xff0c;但是却很少有时间去仔细研究下&#xff0c;或者总结下。攒的多了&#xff0c;就得从头捋一遍。 说下iframe自适应高度&#xff1…

【Linux系统】第13节 CentOS系统中采用Apache发布网站以及访问控制配置详解

目录1 CentOS系统中Apache的安装1.1 安装前检查1.2 配置IP地址1.3 安装及检查2 主页建立与编辑3 Apache主配置文件分析4 访问控制设定4.1 客户机地址限制4.1.1 客户机地址限制原理4.1.2 客户机地址限制示例14.1.3 客户机地址限制示例24.2 用户授权限制5 归纳参考文章1 CentOS系…

【(SQL+HTML+PHP)综合】一个简单论坛网站的综合开发案例(具有用户注册、登录、注销、修改信息、留言等功能)

目录1 实验环境2 网站页面功能规划2.1 论坛首页2.2 个人中心2.3 实现留言功能2.4 数据库及连接数据库3 实验阶段一&#xff1a;实现注册、登录、注销和更新头像等功能3.1 数据库3.2 论坛首页./index.php3.3 个人中心注册页面./member/register.php3.4 接收来自注册页面的表单数…

【蚁剑工具-01】网站管理工具之中国蚁剑安装过程详解以及应用实例

目录1 中国蚁剑安装及设置1.1 下载1.2 安装1.3 相关设置2 中国蚁剑应用实例2.1 操作环境2.2 具体步骤3 总结参考文章任何人不得将其用于非法用途以及盈利等目的&#xff0c;也禁止未经允许私自修改打包进行发布&#xff0c;否则后果自行承担并将追究其相关责任&#xff01;中国…

【文件包含漏洞-04】经典面试题:已知某网站仅存在本地文件包含漏洞时,如何GetShell?

目录1 实验介绍2 实验环境3 实验步骤3.1 包含日志文件getshell拓展4 总结1 实验介绍 实验要求&#xff1a;假设攻击者已经知道某网站存在且仅存在本地文件包含漏洞&#xff0c;并且没有文件上传漏洞点及其他漏洞&#xff0c;如何GetShell。 实验目的&#xff1a;利用本地文件包…

php记录网站访问,PHP简单实现记录网站访问量功能示例

本文实例讲述了PHP简单实现记录网站访问量功能。分享给大家供大家参考&#xff0c;具体如下&#xff1a;tongji/index.php文件&#xff1a; $file dirname(__FILE__)./tongji.db; //$data unserialize(file_get_contents($file)); $fpfopen($file,r); $content; if (flock($f…