当前位置:中国站长下载文章中心网页编程.NET编程 → P/Invoke能够在asp.net中使用

P/Invoke能够在asp.net中使用

减小字体 增大字体 作者:不详  来源:不详  发布时间:2006-8-14 8:21:07
     P/Invoke能够在asp.net 中使用哦,是的,今天have some try le. 1
   2
   3using System;
   4using System.Collections;
   5using System.ComponentModel;
   6using System.Data;
   7using System.Drawing;
   8using System.Web;
   9using System.Web.SessionState;
  10using System.Web.UI;
  11using System.Web.UI.WebControls;
  12using System.Web.UI.HtmlControls;
  13
  14using System.Runtime.InteropServices;
  15using System.Windows.Forms;
  16
  17namespace Test_MyService
  18{
  19 /**//// <summary>
  20 /// WebForm1 的摘要说明。
  21 /// </summary>
  22 public class WebForm1 : System.Web.UI.Page
  23 {
  24 protected System.Web.UI.WebControls.TextBox TextBox1;
  25 protected System.Web.UI.WebControls.Label Label1;
  26 protected System.Web.UI.WebControls.Button Button1;
  27 protected System.Web.UI.WebControls.TextBox TextBox2;
  28 protected System.Web.UI.WebControls.TextBox txtQ;
  29 protected System.Web.UI.WebControls.TextBox txtD;
  30
  31 localhost.ServiceTest myservice = new Test_MyService.localhost.ServiceTest();
  32
  33 private void Page_Load(object sender, System.EventArgs e)
  34 {
  35 // 在此处放置用户代码以初始化页面
  36
  37 }
  38
  39 [DllImport("user32.dll", CharSet=CharSet.Ansi)]
  40 public static extern int MessageBox(int h, string m,
  41 string c, int type);
  42
  43 [DllImport("user32.dll", CharSet=CharSet.Ansi)]
  44 public static extern Boolean MessageBeep(UInt32 beepType);
  45
  46 [DllImport("Kernel32.dll", SetLastError=true)]
  47 static extern Boolean Beep(UInt32 frequency, UInt32 duration);
  48
  49
  50 Web 窗体设计器生成的代码#region Web 窗体设计器生成的代码
  51 override protected void OnInit(EventArgs e)
  52 {
  53 //
  54 // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
  55 //
  56 InitializeComponent();
  57 base.OnInit(e);
  58 }
  59
  60 /**//// <summary>
  61 /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  62 /// 此方法的内容。
  63 /// </summary>
  64 private void InitializeComponent()
  65 {
  66 this.Button1.Click += new System.EventHandler(this.Button1_Click);
  67 this.Load += new System.EventHandler(this.Page_Load);
  68
  69 }
  70 #endregion
  71
  72 private void Button1_Click(object sender, System.EventArgs e)
  73 {
  74 this.TextBox2.Text = myservice.Who(this.TextBox1.Text);
  75
  76// string pText = "Hello World!";
  77// string pCaption = "PInvoke Test";
  78// MessageBox(0, pText, pCaption, 0);
  79
  80 //MessageBeep(0x00000010);
  81 Beep(Convert.ToUInt32(txtQ.Text),Convert.ToUInt32(txtD.Text));
  82
  83 }
  84 }
  85}
  86 其中MessageBox.Show(...)执行时就不动了,内部机理也不名所以,若是能够SHOW的话,那岂不是不用ACTIVEX了吗,一己之见而已了。根据理论是不行的,在。NET3.0(WinFX)可以将Win&Web集成到一起,那时将不分什么了,太恐怖了。
  
  
    做人要厚道,请注明转自chinazhan中国站长(www.ChinaZhan.com)。