• CS中AWP盲狙瞄准器


    严重参考FLASHELF DX的文章:http://www.cnblogs.com/flashelf/archive/2006/10/07/522777.html
    呵呵,基本算是抄袭,就是瞄准器根据自己习惯改了下。
    学习了一点GDI的东西,顺便记下来。扬州移动出差,偷写。 :-)

    主要是通过GetDC   API获得桌面的句柄,再根据该句柄创建Graphics对象。

    PS:笔记本测试,发现失败,进入CS1.5后,瞄准镜消失,无法最前。有了解的,大家帮忙!!!!!!

    代码及程序点击下载




    using System;
    using System.Drawing;
    using System.Collections;
    using System.ComponentModel;
    using System.Windows.Forms;
    using System.Data;
    using System.Runtime.InteropServices;

    namespace cs_cheat
    {
        
    /// <summary>
        
    /// Form1 的摘要说明。
        
    /// </summary>

        public class CS_CHEAT : System.Windows.Forms.Form
        
    {
            
    private System.Windows.Forms.Timer timer1;
            
    private System.Windows.Forms.NotifyIcon notifyIcon1;
            
    private System.Windows.Forms.ContextMenu contextMenu1;
            
    private System.Windows.Forms.MenuItem menuItem_config;
            
    private System.Windows.Forms.MenuItem menuItem_exit;
            
    private System.Windows.Forms.MenuItem menuItem_640;
            
    private System.Windows.Forms.MenuItem menuItem_1650;
            
    private System.Windows.Forms.MenuItem menuItem_800;
            
    private System.Windows.Forms.MenuItem menuItem_1024;
            
    private System.Windows.Forms.MenuItem menuItem1;
            
    private System.ComponentModel.IContainer components;
        
            [DllImport(
    "User32.dll")]   
            
    public   extern   static   System.IntPtr   GetDC(System.IntPtr   hWnd);  
            [DllImport(
    "user32.dll", CharSet=CharSet.Auto)]
            
    public static extern bool InvalidateRect(IntPtr hWnd,IntPtr lpRect ,bool bErase);
     

            
    int x=839;
            
    int y=525;
            
    int w=4;    
            System.IntPtr   DesktopHandle   
    =   GetDC(System.IntPtr.Zero);   
             

            
    public CS_CHEAT()
            
    {
                
    //
                
    // Windows 窗体设计器支持所必需的
                
    //
                InitializeComponent();

                
    //
                
    // TODO: 在 InitializeComponent 调用后添加任何构造函数代码
                
    //
            }


            
    /// <summary>
            
    /// 清理所有正在使用的资源。
            
    /// </summary>

            protected override void Dispose( bool disposing )
            
    {
                
    if( disposing )
                
    {
                    
    if (components != null
                    
    {
                        components.Dispose();
                    }

                }

                
    base.Dispose( disposing );
            }


            
    Windows 窗体设计器生成的代码

            
    /// <summary>
            
    /// 应用程序的主入口点。
            
    /// </summary>

            [STAThread]
            
    static void Main() 
            
    {
                Application.Run(
    new CS_CHEAT());
            }


            
    private void timer1_Tick(object sender, System.EventArgs e)
            
    {
                Graphics   g   
    =   System.Drawing.Graphics.FromHdc(DesktopHandle);
                g.FillRectangle(Brushes.Lime,x,y,w,w);
                g.FillRectangle(Brushes.Lime,x
    -15,y,10,w);
                g.FillRectangle(Brushes.Lime,x
    +5+w,y,10,w);
                g.FillRectangle(Brushes.Lime,x,y
    -15,w,10);
                g.FillRectangle(Brushes.Lime,x,y
    +5+w,w,10);            
            }


            
    private void menuItem_exit_Click(object sender, System.EventArgs e)
            
    {
                
    this.Close();
            }


            
    private void Form1_Closed(object sender, System.EventArgs e)
            
    {
                InvalidateRect(IntPtr.Zero,IntPtr.Zero,
    false); 
            
            }


            
    private void menuItem_800_Click(object sender, System.EventArgs e)
            
    {
                x
    =399;
                y
    =300;
                InvalidateRect(IntPtr.Zero,IntPtr.Zero,
    false);
            
            }


            
    private void menuItem_1024_Click(object sender, System.EventArgs e)
            
    {
                x
    =511;
                y
    =384;
                InvalidateRect(IntPtr.Zero,IntPtr.Zero,
    false);
            }


            
    private void menuItem_640_Click(object sender, System.EventArgs e)
            
    {
                x
    =319;
                y
    =240;
                InvalidateRect(IntPtr.Zero,IntPtr.Zero,
    false); 
            }


            
    private void menuItem_1650_Click(object sender, System.EventArgs e)
            
    {
                x
    =839;
                y
    =525;
                InvalidateRect(IntPtr.Zero,IntPtr.Zero,
    false); 
            }

        }

    }

  • 相关阅读:
    XAF 有条件的对象访问权限
    XAF 顯示 UnInplace Report(設置自定義條件顯示報表,不是根據選擇ListView記錄條件顯示報表)
    XAF 如何自定义PivotGrid单元格显示文本?
    XAF 如何布局详细视图上的按钮
    XAF How to set size of a popup detail view
    XAF Delta Replication Module for Devexpress eXpressApp Framework
    XAF 帮助文档翻译 EasyTest Basics(基础)
    XAF 用户双击ListView记录时禁止显示DetailView
    XAF How to enable LayoutView mode in the GridControl in List Views
    XAF 如何实现ListView单元格批量更改?
  • 原文地址:https://www.cnblogs.com/madgoat/p/579142.html
Copyright © 2020-2023  润新知