【游戏技术群】959392658  【游戏出海群】12067810
游戏蛮牛 手机端
开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

开发者专栏

关注:2422

当前位置:游戏蛮牛 技术专区 开发者专栏

__________________________________________________________________________________
开发者干货区版块规则:

  1、文章必须是图文形式。(至少2幅图)
      2、文章字数必须保持在1500字节以上。(编辑器右下角有字数检查)
      3、本版块只支持在游戏蛮牛原创首发,不支持转载。
      4、本版块回复不得无意义,如:顶、呵呵、不错......【真的会扣分的哦】
      5、......
__________________________________________________________________________________
查看: 8139|回复: 93

[薛飞] 用Unity做一个壁纸程序(一)

  [复制链接]  [移动端链接]
排名
439
昨日变化
1

18

主题

197

帖子

3794

积分

Rank: 9Rank: 9Rank: 9

UID
686
好友
17
蛮牛币
5153
威望
0
注册时间
2013-7-4
在线时间
1545 小时
最后登录
2019-2-22

专栏作家社区QQ达人

QQ
发表于 2018-7-16 10:13:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
本帖最后由 AWNUXCVBN 于 2018-12-23 15:38 编辑

效果如下图
TIM截图20180716100747.jpg


主要代码如下:
[C#] 纯文本查看 复制代码
using System;
using System.Diagnostics;
using System.Runtime.InteropServices;
using UnityEngine;
using UnityEngine.UI;

public class WallPaper : MonoBehaviour
{ 
    [DllImport("user32.dll")]
    static extern IntPtr FindWindow(string lpClassName, string lpWindowName);

    [DllImport("user32.dll")]
    public static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string className, string winName);

    [DllImport("user32.dll")]
    public static extern IntPtr SetParent(IntPtr hwnd, IntPtr parentHwnd);

    [DllImport("user32.dll", CharSet = CharSet.Auto)]
    public static extern int ShowWindow(IntPtr hwnd, int nCmdShow);

    [DllImport("user32.dll")]
    public static extern bool EnumWindows(EnumWindowsProc proc, IntPtr lParam);
    public delegate bool EnumWindowsProc(IntPtr hwnd, IntPtr lParam);

    [DllImport("user32.dll")]
    public static extern IntPtr SendMessageTimeout(IntPtr hwnd, uint msg, IntPtr wParam, IntPtr lParam, uint fuFlage, uint timeout, IntPtr result);

    public Text t;

    public int ResWidth;//窗口宽度
    public int ResHeight;//窗口高度
    IntPtr wallPaper;
    void Main()
    {
        ResWidth = Screen.width;
        ResHeight = Screen.height;
        //Screen.SetResolution(ResWidth, ResHeight, true, 30);

        if (Application.platform == RuntimePlatform.WindowsPlayer)
        {
            wallPaper = FindWindow("WallPaper", null);
            IntPtr progman = FindWindow("Progman", null);

            IntPtr result = IntPtr.Zero;
            // 向 Program Manager 窗口发送 0x52c 的一个消息,超时设置为0x3e8(1秒)。
            SendMessageTimeout(progman, 0x52c, IntPtr.Zero, IntPtr.Zero, 0, 0x3e8, result);

            EnumWindows((hwnd, lParam) =>
            {
                // 找到包含 SHELLDLL_DefView 这个窗口句柄的 WorkerW
                if (FindWindowEx(hwnd, IntPtr.Zero, "SHELLDLL_DefView", null) != IntPtr.Zero)
                {
                    // 找到当前 WorkerW 窗口的,后一个 WorkerW 窗口。 
                    IntPtr tempHwnd = FindWindowEx(IntPtr.Zero, hwnd, "WorkerW", null);

                    // 隐藏这个窗口
                    ShowWindow(tempHwnd, 0);
                }
                return true;
            }, IntPtr.Zero);

            SetParent(wallPaper, progman); 
        }
    }

    // Use this for initialization
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    { 

    }

    private void OnApplicationFocus(bool focus)
    {
        t.text += " focus:" + focus; 
        if(focus)
        {
            //ShowWindow(wallPaper, 0);
        }
    }

}



参考文章https://www.cnblogs.com/jiuxuan/p/7282541.html

目前的bug:程序初次运行会显示在最前方,切换其他程序后也会跳到最前方,Win+D之后就正常

项目地址https://gitee.com/awnuxcvbn/WallPaper.git

点评

hao  发表于 2018-11-6 00:44

评分

参与人数 5鲜花 +15 收起 理由
LL121543 + 2 赞一个!
Time丶龙 + 2 赞一个!
梁兴宇 + 5 很给力!
it麦兜 + 1 淡定
lilexy + 5 给力的!!

查看全部评分


回复

使用道具 举报

6蛮牛粉丝
1034/1500
排名
2999
昨日变化
8

0

主题

248

帖子

1034

积分

Rank: 6Rank: 6Rank: 6

UID
2623
好友
0
蛮牛币
1828
威望
0
注册时间
2013-8-26
在线时间
296 小时
最后登录
2019-2-22
发表于 2018-7-16 11:02:00 | 显示全部楼层
楼主,看起来碉堡了

回复 支持 1 反对 0

使用道具 举报

排名
472
昨日变化
1

236

主题

1万

帖子

2万

积分

Rank: 12Rank: 12Rank: 12

UID
78862
好友
17
蛮牛币
33858
威望
0
注册时间
2015-3-11
在线时间
3139 小时
最后登录
2019-2-22
QQ
发表于 2018-7-16 11:47:30 | 显示全部楼层
秀得一批!!

回复

使用道具 举报

5熟悉之中
793/1000
排名
5182
昨日变化
5

0

主题

350

帖子

793

积分

Rank: 5Rank: 5

UID
265286
好友
0
蛮牛币
947
威望
0
注册时间
2018-1-19
在线时间
171 小时
最后登录
2018-12-31
发表于 2018-7-16 14:00:22 | 显示全部楼层
我陈独秀会都不开了,就看你秀壁纸。

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1420/1500
排名
2239
昨日变化
8

1

主题

464

帖子

1420

积分

Rank: 6Rank: 6Rank: 6

UID
56245
好友
1
蛮牛币
3810
威望
0
注册时间
2014-11-18
在线时间
331 小时
最后登录
2019-2-23
发表于 2018-7-16 14:38:12 | 显示全部楼层
这个很厉害,很接地气~

回复 支持 反对

使用道具 举报

7日久生情
2006/5000
排名
1961
昨日变化
3

5

主题

761

帖子

2006

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
239879
好友
1
蛮牛币
16936
威望
0
注册时间
2017-8-26
在线时间
554 小时
最后登录
2019-2-22
发表于 2018-7-16 14:54:22 | 显示全部楼层
谢谢楼主分享

回复

使用道具 举报

6蛮牛粉丝
1346/1500
排名
1743
昨日变化
3

0

主题

198

帖子

1346

积分

Rank: 6Rank: 6Rank: 6

UID
131010
好友
1
蛮牛币
2069
威望
0
注册时间
2015-12-6
在线时间
398 小时
最后登录
2019-2-22
发表于 2018-7-16 15:20:08 | 显示全部楼层
学习一下!!!

回复

使用道具 举报

7日久生情
2109/5000
排名
1508
昨日变化
5

0

主题

670

帖子

2109

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
135463
好友
0
蛮牛币
272
威望
0
注册时间
2016-1-23
在线时间
599 小时
最后登录
2019-2-23
发表于 2018-7-16 15:59:41 | 显示全部楼层
iopoipoioipoipioiop

回复 支持 反对

使用道具 举报

7日久生情
3555/5000
排名
1563
昨日变化
5

0

主题

2131

帖子

3555

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
219676
好友
1
蛮牛币
2826
威望
0
注册时间
2017-7-12
在线时间
604 小时
最后登录
2019-2-22

活力之星

发表于 2018-7-16 17:52:18 | 显示全部楼层
谢谢分享

回复

使用道具 举报

7日久生情
1917/5000
排名
4444
昨日变化
2

0

主题

1333

帖子

1917

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
267381
好友
6
蛮牛币
3208
威望
0
注册时间
2018-2-1
在线时间
258 小时
最后登录
2018-11-6
发表于 2018-7-16 18:20:02 | 显示全部楼层
谢谢分享

回复

使用道具 举报

4四处流浪
439/500
排名
8183
昨日变化
4

0

主题

226

帖子

439

积分

Rank: 4

UID
281167
好友
1
蛮牛币
884
威望
0
注册时间
2018-5-14
在线时间
65 小时
最后登录
2018-12-10
发表于 2018-7-16 19:22:50 | 显示全部楼层
感谢分享

回复

使用道具 举报

7日久生情
1641/5000
排名
1442
昨日变化
7

7

主题

232

帖子

1641

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
162659
好友
3
蛮牛币
4019
威望
0
注册时间
2016-8-16
在线时间
542 小时
最后登录
2019-2-23
发表于 2018-7-17 08:52:32 | 显示全部楼层
看起来碉堡了,前排观看,

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1489/1500
排名
1346
昨日变化

0

主题

203

帖子

1489

积分

Rank: 6Rank: 6Rank: 6

UID
221015
好友
1
蛮牛币
2181
威望
0
注册时间
2017-5-7
在线时间
386 小时
最后登录
2019-2-18
发表于 2018-7-17 09:02:39 | 显示全部楼层
谢谢分享!

回复

使用道具 举报

7日久生情
3319/5000
排名
291
昨日变化
2

1

主题

759

帖子

3319

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
27356
好友
1
蛮牛币
4899
威望
0
注册时间
2014-5-30
在线时间
657 小时
最后登录
2019-2-22
发表于 2018-7-17 09:51:55 | 显示全部楼层
嗯。。 有意思啊
有意思

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1421/1500
排名
4444
昨日变化
35

0

主题

844

帖子

1421

积分

Rank: 6Rank: 6Rank: 6

UID
254705
好友
1
蛮牛币
1379
威望
0
注册时间
2017-11-16
在线时间
247 小时
最后登录
2019-2-22
发表于 2018-7-17 10:30:45 | 显示全部楼层
6666666666666666666666666666666666666666

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

快速回复 返回顶部 返回列表