标题:无法在 DLL“gdi32”中找到名为“SetBKMode”的入口点
只看楼主
feipu2211
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-10-6
结帖率:0
已结贴  问题点数:0 回复次数:2 
无法在 DLL“gdi32”中找到名为“SetBKMode”的入口点
书上的一个例子,我照着输入程序,运行时出现“无法在 DLL“gdi32”中找到名为“SetBKMode”的入口点”
请问是什么原因啊?
using System;
using System.Collections.Generic;
using
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Drawing2D;
namespace circlewindow
{
   
    public partial class Form1 : Form
    {
        [System.Runtime.InteropServices.DllImport("gdi32")]
        private static extern IntPtr BeginPath(IntPtr hdc);
        [System.Runtime.InteropServices.DllImport("gdi32")]
        private static extern int SetBKMode(IntPtr hdc, int nBKMode);
        const int TRSPARENT = 1;
        [System.Runtime.InteropServices.DllImport("gdi32")]
        private static extern IntPtr EndPath(IntPtr hdc);
        [System.Runtime.InteropServices.DllImport("gdi32")]
        private static extern IntPtr PathToRegion(IntPtr hdc);
        [System.Runtime.InteropServices.DllImport("gdi32")]
        private static extern int Ellipse(IntPtr hdc, int x1, int y1, int x2, int y2);
        [System.Runtime.InteropServices.DllImport("user32")]
        private static extern IntPtr SetWindowRgn(IntPtr hdc, IntPtr hRgn, bool bRedraw);
        [System.Runtime.InteropServices.DllImport("user32")]
        private static extern IntPtr GetDC(IntPtr hWnd);
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            IntPtr dc;
            IntPtr region;
            dc = GetDC(this.Handle);
            BeginPath(dc);
            SetBKMode(dc, (int)TRSPARENT);
            Ellipse(dc, 20, 20, 220, 220);
            EndPath(dc);
            region = PathToRegion(dc);
            SetWindowRgn(this.Handle, region, true);
        }
    }
}
搜索更多相关主题的帖子: private public class using 
2011-10-23 22:10
wangnannan
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:87
帖 子:2545
专家分:9359
注 册:2007-11-3
得分:20 
regsvr32 gdi32.dll

出来混,谁不都要拼命的嘛。 。拼不赢?那就看谁倒霉了。 。有机会也要看谁下手快,快的就能赢,慢。 。狗屎你都抢不到。 。还说什么拼命?
2011-10-24 09:57
feipu2211
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-10-6
得分:0 
问题解决了,DllImport("gdi32")变为DllImport("gdi32",EntryImport="BeginPath")就行了。
2011-10-31 12:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-353258-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.050662 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved