re: DotNet入门介绍[未登录] Zeus 2007-08-23 16:15
@生气
不要生气,没有密码也可以看
能否给我发一个好用的破解啊,谢谢了!xzp_ater@163.com
re: 毕业五年之创业篇 Zeus 2006-03-11 00:47
乍一看还以为是CSDN的蝈蝈,仔细一看不是。
细细读了全文,喜欢这种真心写作的文字,祝愿兄弟以后的发展越来越好!
我怀疑公司给别人的公司都比我高.......
这个歌不错:)
这小家伙唱的我不想说我是鸡也很好听。
re: DotNet软件开发框架 Zeus 2006-02-11 11:00
呵呵,Castle + Nhibernate+ ASP.NET也是我的选择。
唯一的缺憾是性能好像并没有想象中理想。但整体架构比较协调。
关于人员流动问题,我们和宝玉等谈过多次,这个牵涉到的原因很多。
关于议题,确实作些专业性的开发技术讲座为好,这点我强烈赞同。
商业化气氛太浓了可能影响部分兄弟的胃口,但没有固定的商业支持也没经费很难办一次活动,连小奖品、材料什么的都不好准备。
虽然有些观点我并不同意,但不可否认这是最近看到的一篇不错的NH文章,希望楼主继续奉献开源框架运用的介绍给大家。
re: 封装变化(二) Zeus 2006-02-11 10:18
我觉得写得挺好的,且比《封》系列的一要好,现在缺乏的就是设计模式运用与思想的好文,仅仅介绍某个模式的文章过于泛滥而且往往乏善可陈,还不如去看Gof原著。
支持wayfarer兄弟!
re: 封装变化(二) Zeus 2006-02-11 10:09
我觉得写得挺好的,而且比《封》系列的一要好,现在缺乏的就是设计模式运用与思想的好文,仅仅介绍某个模式什么的文章过于泛滥而且往往乏善可呈,还不如去看Gof原著。
支持wayfarer兄弟!
re: Castle的IoC容器深入分析 Zeus 2006-01-26 00:13
我这实际项目中一直用Castle,主要用其中的MonoRails和AR,感觉挺好的,我遇到的绝大多数问题都能解决,但个人感觉不适用于小项目。
re: C# 2.0会给我们带来什么 Zeus 2005-12-10 10:36
同意装配脑袋。各种语言有不同的目的和应用场合,并不是离底层越远的语言一定没有前途。找个简单点的,如果zz堪兄可以用汇编写一个类似Biztalk的工作流引擎,小弟一定佩服得五体投地。
re: C# 2.0会给我们带来什么 Zeus 2005-12-09 12:50
有一点需要特别说明的是:我觉得语言本身并不是特别重要,语言只是实现目的的工具,最重要的东西在语言之外。如果大家还停留在对语言这般那般的批驳比较,意义不大。哪位大师都不止深入一门语言。
我想,总有一天计算机语言会进化成人类的自然语言,剩下的由编译器去做。
re: C# 2.0会给我们带来什么 Zeus 2005-12-09 12:44
晕,今天上来一看,成吵架贴了。我承认自己水平有限,但想说明的一点是:我的本意并不是要说好或坏,也不是说C#2.0就这么点东西或者讨论其历史地位。这个贴溯源于CSDN上很多新手不知道C#2.0的一些基本知识,所以我把回复了几次的简单回答合并到一起写成此贴。上面提及的匿名方法、泛型、不完全类型、迭代器等都是在项目中常用的,其他有很多包括空属类型、名称空间别名限定符、定长buffer、Pragma指示符、Conditional特性类、属性访问器保护级别的变化等都没提及,各个新特性都没有做深入介绍。希望大家都能够平和对待。
可以如文中所述先获得客户端的IP地址然后由IP地址利用nbtstat -a进程来获取到远程客户端的mac地址。
补充:对于导出到Excel有更详尽的代码如下:
Response.ContentType = "application/vnd.ms-excel";
Response.Charset = "";
this.EnableViewState = false;
System.IO.StringWriter sw = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(sw);
int nCur = dgShow.CurrentPageIndex;
int nSize = dgShow.PageSize;
dgShow.AllowPaging = false;
BindData();
dgShow.Columns[7].Visible =false;
dgShow.RenderControl(hw);
dgShow.Columns[7].Visible =true;
//以下恢复分页
dgShow.AllowPaging = true;
dgShow.CurrentPageIndex = nCur;
dgShow.PageSize = nSize;
BindData();
Response.Write(sw.ToString());
Response.End();
lizicheng你好,我这QQ上不了,有事可以发邮件realzeus@gmail.com联系。
上面方法对服务空间也有要求,不能有安全提问更不能对空间有要求的方法我不知道,如果你知道了烦请告诉我,谢谢!
re: 现有AOP解决方案收集 Zeus 2005-09-04 18:40
不错!
re: 老婆大人生日了 Zeus 2005-09-04 18:34
洋溢着幸福的文字啊!祝你们白首到老!
获取网卡地址 MAC也可以:
using System.Management;
public string GetMacAddress()
{
ManagementClass adapters = new ManagementClass("Win32_NetworkAdapterConfiguration");
string MACAddress = "unknown";
foreach (ManagementObject adapter in adapters.GetInstances())
{
if((bool)adapter["IPEnabled"] == true)
{
MACAddress = adapter.Properties["MACAddress"].Value.ToString();
break;
}
}
return MACAddress;
}
我那个也可以作为服务或在Diagnostics的ProcessStart下运行啊,如果你要asp的,可以用下面的:
<%
dim remoteaddr
if Request.ServerVariables("HTTP_X_FORWARDED_FOR")=empty then
remoteaddr=Request.ServerVariables("REMOTE_ADDR")
else
remoteaddr=Request.ServerVariables("HTTP_X_FORWARDED_FOR")
end if
Response.Write(GetMac(remoteaddr))
'由于读取某IP的网卡MAC地址
'本程序通过调用arp命令通过查询本机arp表读取特定IP的MAC地址
'使用本程序需注意以下事项:
' 本程序需要“WSCRIPT.SHELL”和“Scripting.FileSystemObject”两个组件,请确保您的服务器可以正常使用这两个组件
' 本程序需要调用cmd.exe程序,请确保IIS来宾帐号对程序有访问权限。
' 本程序需要临时文件保存结果,请确保IIS来宾帐号对临时目录有写权限。
'
function GetMac(IP)
On Error Resume Next
Dim oScript
Dim oFileSys, oFile
Dim All, szTempFile,ipc,phyc,typec
Dim TempPath
Set oScript = Server.CreateObject("WSCRIPT.SHELL")
Set oFileSys = Server.CreateObject("Scripting.FileSystemObject")
TempPath="d:\temp\" '临时目录
szTempFile = TempPath & oFileSys.GetTempName() ' 获取临时文件名
Call oScript.Run ("cmd.exe /c ping -n 2 " & IP, 0, True) '保证arp表中有此IP
Call oScript.Run ("cmd.exe /c arp -a " & IP & " > " & szTempFile, 0, True)
Set oFile = oFileSys.OpenTextFile (szTempFile, 1, False, 0)
All=oFile.ReadAll()
oFile.Close
If (IsObject(oFile)) Then
Call oFileSys.DeleteFile(szTempFile, True)
End If
arr = Split(All, vbCrLf)
If UBound(arr) = 4 Then
ipc = InStr(1, arr(2), "Internet Address")
phyc = InStr(1, arr(2), "Physical Address")
typec = InStr(1, arr(2), "Type")
If typec > phyc And phyc > ipc And ipc > 0 Then
GetMac=Ucase(Trim(CStr(Mid(arr(3), phyc, typec - phyc))))
End If
End If
End function
%>
泛滥流传的这段试了吗?行不行?
using System.Text.RegularExpressions;
using System.Diagnostics;
public class test
{
public test
{}
public static string GetCustomerMac(string IP) //para IP is the client's IP
{
string dirResults="";
ProcessStartInfo psi = new ProcessStartInfo();
Process proc = new Process();
psi.FileName = "nbtstat";
psi.RedirectStandardInput = false;
psi.RedirectStandardOutput = true;
psi.Arguments = "-A " + IP;
psi.UseShellExecute = false;
proc = Process.Start(psi);
dirResults = proc.StandardOutput.ReadToEnd();
proc.WaitForExit();
dirResults=dirResults.Replace("\r","").Replace("\n","").Replace("\t","");
Regex reg=new Regex("Mac[ ]{0,}Address[ ]{0,}=[ ]{0,}(?((.)*?))__MAC",RegexOptions.IgnoreCase|RegexOptions.Compiled);
Match mc=reg.Match(dirResults+"__MAC");
if(mc.Success)
{
return mc.Groups["key"].Value;
}
else
{
reg=new Regex("Host not found",RegexOptions.IgnoreCase|RegexOptions.Compiled);
mc=reg.Match(dirResults);
if(mc.Success)
{
return "Host not found!";
}
else
{
return "";
}
}
}
}
re: 关于系统设计和模式的两篇不错的文章 Zeus 2005-08-17 10:14
thks!
我看Wrox系列的书比较多一些,先后看过不少书,良莠不齐的,推荐几本感觉入门比较好的《C#入门经典》《ASP.NET入门经典》《C#高级编程》《Visual C#基于组件的开发》,还有《设计模式》《重构》《uml精粹》之类的都很不错!
P.S.:我对MS PRESS的书很不感冒,很多人喜欢的《ASP.NET UNLEASHED》之类的我觉得一般。其实看很多书不是因为好才看,而是手头能找到或者去书店买了什么书才看的:)
”而是采用记录日志和设置断言的方式“
是不是说
而是采用记录日志和设置断点的方式?
时间能安排开一定去,愿DOTNET CLUB越走越好!
re: 设计模式不能做什么 Zeus 2005-08-01 21:57
make some sense!
To:chengyanchao@gmail.com
你给的邮箱我发了好几次,发送老失败。
文章后面有下载的,自己下吧。
re: 程序员应具备的素质 Zeus 2005-07-14 10:06
言之有物!
我是htttp://www.cnblogs.com/zeus,在dnnchina的id是zeusvenus,在CSDN的id是zeusvenus,申请加入!共同为DNN的发展尽自己一份力!
QQ群已经人满了,加不进去.只好在这加入Club了.
我的博帐户是http:\\www.cnblogs.com\zeus
pcjiawei注意查收代码;
另外,代码下载连接文章后面有,以后需要的直接去下就行了.
使用WMI数据库的类查询MAC可以找到系统中安装的每一个网络接口,并显示返回的IP和MAC信息,这种方法得到的IP/MAC信息应该是与从本机注册表中得到的是相同的.可以远程获取IP/SUBNET/MAC等信息,试过了可以.
using System;
using System.Management;
class WMIqueryIPMAC
{
public static void Main()
{
ManagementObjectSearcher query = new
ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = 'TRUE'") ;
ManagementObjectCollection queryCollection = query.Get();
foreach( ManagementObject MO in queryCollection )
{
string[] addresses = (string[])MO["IPAddress"];
string[] subnets = (string[])MO["IPSubnet"];
string[] defaultgateways = (string[])MO["DefaultIPGateway"];
Console.WriteLine("Network Card: {0}", MO["Description"]);
Console.WriteLine("MAC Address: {0}", MO["MACAddress"]);
foreach(string ipaddress in addresses)
{
Console.WriteLine("IP Address: {0}", ipaddress);
}
foreach(string subnet in subnets)
{
Console.WriteLine("Subnet Mask: {0}", subnet);
}
foreach(string defaultgateway in defaultgateways)
{
Console.WriteLine("Gateway: {0}", defaultgateway);
}
}
}
}
re: XiaoHui Zeus 2005-04-21 06:55
在CS的Roadmap中就提到了根据MAC封锁帐号那个我刚看了,呵呵,深感水平不足啊,自己还在摸索中的人家老外已经应用于实践了啊。
re:mikespook Zeus 2005-04-21 06:51
兄弟言之有理,等下今天我用检索WMI库的方法试试跨网段的行不行,稍候贴代码上来。
re: montaque Zeus 2005-04-20 23:06
当然可以获得客户端的MAC了,而且不用ActiveX,只不过一般而言获得本网段内的比较容易,有疑问吗?要么我去写个代码贴上来?
hehe,nothing is impossible:)
re: 听棠.NET Zeus 2005-04-20 23:01
要是机器没装网卡,那么这个值是空的,因为string初始值为空啊;
请注意下面做了if ((bool)MO["IPEnabled"] == true) 的判断,如果没有网卡当然还是保持上面的初始值了。
sevenli@softrich.com.cn,mallen@126.com注意查收
不错,我开始也做了一个这样的,后来发现会被其他控件如文本框等挡住,所以才改做弹出式窗体的了。
bullsongsong@hotmail.com
zshihan916@163.com
SourceCode已经发到邮箱,请注意查收。
由于水平有限,只完成了基本功能,以后慢慢再加强吧。
另外,Gmail蛋好多,虽然已经是老东西了,可能还是有人需要,谁要的在下面留个E-mail地址我发邀请。