|
How you do that depends on the networking environment the machines are in.
If you're talking about any "client" machine on the Internet, you can't. You'll get the MAC address of the last hop that put the packet on your network.
If you're talking about a local area network, there are other issues that must be accounted for.
|
|
|
|
|
Hi,
I am not sure if I fully understand your question, but you can try this snippet.
Dim mgmt As Management.ManagementClass = New Management.ManagementClass("Win32_NetworkAdapterConfiguration")
Dim mcol As Management.ManagementObjectCollection = mgmt.GetInstances()
For Each o As Management.ManagementObject In mcol
If o.Item("IPEnabled") = True Then
MsgBox(o.Item("MacAddress").ToString())
End If
Next
for more info please go to http://msdn2.microsoft.com/en-us/library/aa394217.aspx[^]
Note: Add a reference to System.Management.dll
Hope this helps
|
|
|
|
|
I didn't give him this answer because I don't know if he's looking for the MAC address of machine in his local segment, if he needs the MAC on machines other than Windows, if this has to work on the Internet, ...
I firmly believe that if you ask a question in less than 150 words, you've left out important details that are required to give an accurate answer...
|
|
|
|
|
Hi,
I am new to .net framework. I know that while the compilation, .net source code get converted to IL.
My doubt is where I can see this IL code?
Ahamed Azeem
\
|
|
|
|
|
Why do you want to ?
Christian Graus - Microsoft MVP - C++
"I am working on a project that will convert a FORTRAN code to corresponding C++ code.I am not aware of FORTRAN syntax" ( spotted in the C++/CLI forum )
|
|
|
|
|
Use Lutz Roeder's Reflector.
-- Always write code as if the maintenance programmer were an axe murderer who knows where you live.
Upcoming FREE developer events:
* Glasgow: Agile in the Enterprise Vs. ISVs, Mock Objects, SQL Server CLR Integration, Reporting Services, db4o ...
* Reading: SQL Bits
My website
|
|
|
|
|
You have to open a Visual Studio command prompt, then type ILDASM to launch the IL Disassembler. Open the compiled .EXE or .DLL in that and you can see all the IL code.
|
|
|
|
|
Thanks a lot
Ahamed Azeem
software Programmer
|
|
|
|
|
Like the others said, use Reflector or ILDASM. This link to opcodes/instructions [^] can be helpful for you, as well.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
hello every one
i am working on my assignment and i have done about 75% work but i am strugling to collid ball with padle i mean bat so can any one help me with this issue code is like this
some time it works but some time it's behaive very funny
Option Explicit On <br />
Option Strict On<br />
Public Class frmPong<br />
Inherits System.Windows.Forms.Form<br />
<br />
#Region " Windows Form Designer generated code "<br />
<br />
Public Sub New()<br />
MyBase.New()<br />
<br />
'This call is required by the Windows Form Designer.<br />
InitializeComponent()<br />
<br />
'Add any initialization after the InitializeComponent() call<br />
<br />
End Sub<br />
<br />
'Form overrides dispose to clean up the component list.<br />
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)<br />
If disposing Then<br />
If Not (components Is Nothing) Then<br />
components.Dispose()<br />
End If<br />
End If<br />
MyBase.Dispose(disposing)<br />
End Sub<br />
<br />
'Required by the Windows Form Designer<br />
Private components As System.ComponentModel.IContainer<br />
<br />
'NOTE: The following procedure is required by the Windows Form Designer<br />
'It can be modified using the Windows Form Designer. <br />
'Do not modify it using the code editor.<br />
Friend WithEvents timPong As System.Windows.Forms.Timer<br />
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()<br />
Me.components = New System.ComponentModel.Container<br />
Me.timPong = New System.Windows.Forms.Timer(Me.components)<br />
'<br />
'timPong<br />
'<br />
'<br />
'frmPong<br />
'<br />
Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)<br />
Me.BackColor = System.Drawing.Color.GreenYellow<br />
Me.ClientSize = New System.Drawing.Size(728, 461)<br />
Me.Name = "frmPong"<br />
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen<br />
Me.Text = "PingPong"<br />
<br />
End Sub<br />
<br />
#End Region<br />
Const BALL_WID As Integer = 50<br />
Const BALL_HGT As Integer = 50<br />
Const MyBall As Integer = 1<br />
Dim BallDirX(MyBall), BallXSpd(MyBall) As Integer<br />
Dim BallDirY(MyBall), BallYSpd(MyBall) As Integer<br />
Dim BallX(MyBall) As Integer<br />
Dim BallY(MyBall) As Integer<br />
Dim MyBrush As Drawing.Brush<br />
Dim BallImage(MyBall) As Drawing.Image<br />
Dim MyDrawing As Drawing.Graphics<br />
Dim Colors(10) As Drawing.Brush<br />
Dim MyBat1, MyBat2, BallRct(MyBall) As Drawing.Rectangle<br />
Dim MyPen As Drawing.Pen<br />
Dim L, T As Integer<br />
<br />
Private Sub frmPong_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
'choose color<br />
Colors(1) = Brushes.BlueViolet<br />
Colors(2) = Brushes.Blue<br />
Colors(3) = Brushes.Green<br />
Colors(4) = Brushes.Red<br />
Colors(5) = Brushes.Yellow<br />
Colors(6) = Brushes.Aqua<br />
Colors(7) = Brushes.Black<br />
Colors(8) = Brushes.Brown<br />
Colors(9) = Brushes.DarkOrange<br />
Colors(10) = Brushes.Navy<br />
<br />
'choose random color<br />
MyBrush = Colors(CInt(Rnd() * 10 - 0.5 + 1))<br />
Randomize()<br />
'bat1 and bat2 dimention<br />
L = 30 : T = 100<br />
'draw bat1<br />
MyBat1 = New Drawing.Rectangle(CInt(L / 2), CInt(Me.ClientRectangle.Height / 2) - CInt(T / 2), L, T)<br />
'draw bat2<br />
MyBat2 = New Drawing.Rectangle(Me.ClientRectangle.Width - L - CInt(L / 2), CInt(Me.ClientRectangle.Height / 2) _<br />
- CInt(T / 2), L, T)<br />
'randomize ball direction<br />
For I As Integer = 1 To MyBall<br />
BallDirX(I) = CInt(Rnd() * 3 - 0.5)<br />
BallDirY(I) = CInt(Rnd() * 3 - 0.5)<br />
BallX(I) = CInt(Rnd() * (Me.ClientSize.Width - BALL_WID))<br />
BallY(I) = CInt(Rnd() * (Me.ClientSize.Height - BALL_HGT))<br />
'randomize speed<br />
BallXSpd(I) = 3 + CInt(Rnd() * 8 - 0.5)<br />
BallYSpd(I) = 3 + CInt(Rnd() * 8 - 0.5)<br />
Next I<br />
Me.SetStyle(ControlStyles.AllPaintingInWmPaint Or ControlStyles.UserPaint Or _<br />
ControlStyles.DoubleBuffer, True)<br />
Me.UpdateStyles()<br />
timPong.Enabled = True<br />
End Sub<br />
<br />
Private Sub timPong_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles timPong.Tick<br />
<br />
For I As Integer = 1 To MyBall<br />
BallX(I) = BallX(I) + BallDirX(I) * BallXSpd(I)<br />
BallY(I) = BallY(I) + BallDirY(I) * BallYSpd(I)<br />
BallRct(I) = New Rectangle(BallX(I), BallY(I), BALL_WID, BALL_HGT)<br />
If BallX(I) < 0 Then<br />
BallDirX(I) = -BallDirX(I)<br />
Beep()<br />
'choose random color<br />
MyBrush = Colors(CInt(Rnd() * 10 - 0.5 + 1))<br />
CheckCollision()<br />
ElseIf BallX(I) + BALL_WID > Me.ClientSize.Width Then<br />
BallDirX(I) = -BallDirX(I)<br />
Beep()<br />
'choose random color<br />
MyBrush = Colors(CInt(Rnd() * 10 - 0.5 + 1))<br />
CheckCollision()<br />
End If<br />
If BallY(I) < 0 Then<br />
BallDirY(I) = -BallDirY(I)<br />
Beep()<br />
'choose random color<br />
MyBrush = Colors(CInt(Rnd() * 10 - 0.5 + 1))<br />
CheckCollision()<br />
ElseIf BallY(I) + BALL_HGT > Me.ClientSize.Height Then<br />
BallDirY(I) = -BallDirY(I)<br />
Beep()<br />
'choose random color<br />
MyBrush = Colors(CInt(Rnd() * 10 - 0.5 + 1))<br />
CheckCollision()<br />
End If<br />
If BallX(I) < MyBat1.X Then<br />
BallDirX(I) = -BallDirX(I)<br />
End If<br />
Next I<br />
Me.Invalidate()<br />
<br />
End Sub<br />
<br />
Private Sub frmPong_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles MyBase.Paint<br />
e.Graphics.Clear(Me.BackColor)<br />
<br />
e.Graphics.FillEllipse(MyBrush, BallX(MyBall), BallY(MyBall), BALL_WID, BALL_HGT)<br />
<br />
e.Graphics.FillRectangle(MyBrush, MyBat1)<br />
e.Graphics.FillRectangle(MyBrush, MyBat2)<br />
End Sub<br />
Public Sub CheckCollision()<br />
Dim Collid As Rectangle, Collided As Boolean<br />
Collid = Collid.Intersect(BallRct(MyBall), MyBat1)<br />
If Not (Collid.IsEmpty) Then<br />
BallX(MyBall) = 1<br />
<br />
End If<br />
<br />
End Sub<br />
<br />
Private Sub frmPong_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown<br />
CheckCollision()<br />
Select Case e.KeyCode<br />
Case Keys.Up<br />
MyBat1.Y -= 10<br />
Case Keys.Down<br />
MyBat1.Y += 10<br />
Case Keys.Right<br />
MyBat1.X += 10<br />
Case Keys.Left<br />
MyBat1.X -= 10<br />
<br />
End Select<br />
End Sub<br />
End Class
you can just copy and past this code and please have look
i have tried lot but i dont know how to deal with this problem
so please please please help me with this
thanks in advance
waiting for your kind rep.
|
|
|
|
|
bapu2889 wrote: Public Sub CheckCollision()
Dim Collid As Rectangle, Collided As Boolean
Collid = Collid.Intersect(BallRct(MyBall), MyBat1)
If Not (Collid.IsEmpty) Then
BallX(MyBall) = 1
End If
End Sub
Have you checked your CheckCollision method?? What is BallX(MyBall) = 1 supposed to do??
|
|
|
|
|
first of all thank you very much sir
sir i am new and i am doing my assignment and i am haveing problem with this since last 4 days i have debug program somany times but i could not find any thing so can you please kindly help me with this
i put ballx(myball)=1 because there is only one ball that's why but i am not sure can you please tell me what do i need to do
waiting for your kind rep.
have a nice time
|
|
|
|
|
bapu2889 wrote: but i am not sure can you please tell me what do i need to do
OK. So you set a variable to the number of balls on the field when a collision is detected. Do you see something wrong with that?? What do you WANT it to do when a collision is detected?? YOU have to write the code for that. I can't tell you what to do with it because I have no idea what you want it to do.
Homework assignments are tricky for us because if we just gave you the answers, you wouldn't learn anything you needed for the next class.
|
|
|
|
|
thanks again sir
i have made few changes so please have a look
and when ball collid with padle i just want ball to bounce back randomly i think it's working
but now next problem is when i dilebaratly miss ball it's still make sound and that's i doint want, but it's suppose to not make any beep sound but i think it's passes through the padle line, but i dont know that am i right or wrong ?
any help for this
the new code is
If BallX(I) < (MyBat1.Width) Then<br />
BallDirX(I) = 1<br />
Collided = True<br />
Beep()<br />
End If<br />
<br />
Public Sub CheckCollision()<br />
Dim Collid As Rectangle, Collided As Boolean<br />
Collid = Collid.Intersect(MyBat1, BallRct(MyBall))<br />
If Not (Collid.IsEmpty) Then<br />
BallDirX(MyBall) = -BallDirX(MyBall)<br />
<br />
End If<br />
<br />
End Sub
and as you said that if you give me answer i want learn that's very true but i just want right direction sir
waiting for your kind rep.
-- modified at 13:12 Sunday 26th August, 2007
hello sir
and thank you for not giving me answer and i am not joking and i am happy for that but it's done now ,please check or run both code and see the difference
thansk again
your advice is very powerfull
Option Explicit On <br />
Option Strict On<br />
Public Class frmPong<br />
Inherits System.Windows.Forms.Form<br />
<br />
#Region " Windows Form Designer generated code "<br />
<br />
Public Sub New()<br />
MyBase.New()<br />
<br />
'This call is required by the Windows Form Designer.<br />
InitializeComponent()<br />
<br />
'Add any initialization after the InitializeComponent() call<br />
<br />
End Sub<br />
<br />
'Form overrides dispose to clean up the component list.<br />
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)<br />
If disposing Then<br />
If Not (components Is Nothing) Then<br />
components.Dispose()<br />
End If<br />
End If<br />
MyBase.Dispose(disposing)<br />
End Sub<br />
<br />
'Required by the Windows Form Designer<br />
Private components As System.ComponentModel.IContainer<br />
<br />
'NOTE: The following procedure is required by the Windows Form Designer<br />
'It can be modified using the Windows Form Designer. <br />
'Do not modify it using the code editor.<br />
Friend WithEvents timPong As System.Windows.Forms.Timer<br />
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()<br />
Me.components = New System.ComponentModel.Container<br />
Me.timPong = New System.Windows.Forms.Timer(Me.components)<br />
'<br />
'timPong<br />
'<br />
'<br />
'frmPong<br />
'<br />
Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)<br />
Me.BackColor = System.Drawing.Color.GreenYellow<br />
Me.ClientSize = New System.Drawing.Size(728, 461)<br />
Me.Name = "frmPong"<br />
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen<br />
Me.Text = "PingPong"<br />
<br />
End Sub<br />
<br />
#End Region<br />
Const BALL_WID As Integer = 50<br />
Const BALL_HGT As Integer = 50<br />
Const MyBall As Integer = 1<br />
Dim BallDirX(MyBall), BallXSpd(MyBall) As Integer<br />
Dim BallDirY(MyBall), BallYSpd(MyBall) As Integer<br />
Dim BallX(MyBall) As Integer<br />
Dim BallY(MyBall) As Integer<br />
Dim MyBrush As Drawing.Brush<br />
Dim BallImage(MyBall) As Drawing.Image<br />
Dim MyDrawing As Drawing.Graphics<br />
Dim Colors(10) As Drawing.Brush<br />
Dim MyBat1, MyBat2, BallRct(MyBall) As Drawing.Rectangle<br />
Dim MyPen As Drawing.Pen<br />
Dim Collid As Rectangle, Collided As Boolean<br />
Dim W, H, I As Integer<br />
<br />
Private Sub frmPong_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
'choose color<br />
Colors(1) = Brushes.BlueViolet<br />
Colors(2) = Brushes.Blue<br />
Colors(3) = Brushes.Green<br />
Colors(4) = Brushes.Red<br />
Colors(5) = Brushes.Yellow<br />
Colors(6) = Brushes.Aqua<br />
Colors(7) = Brushes.Black<br />
Colors(8) = Brushes.Brown<br />
Colors(9) = Brushes.DarkOrange<br />
Colors(10) = Brushes.Navy<br />
<br />
'choose random color<br />
MyBrush = Colors(CInt(Rnd() * 10 - 0.5 + 1))<br />
'bat1 and bat2 dimention<br />
W = 30 : H = 100<br />
'draw bat1<br />
MyBat1 = New Drawing.Rectangle(0, 0, W, H)<br />
'draw bat2<br />
MyBat2 = New Drawing.Rectangle(Me.ClientRectangle.Width - W - CInt(W / 2), CInt(Me.ClientRectangle.Height / 2) _<br />
- CInt(W / 2), W, H)<br />
<br />
'randomize ball direction<br />
Randomize()<br />
For I As Integer = 1 To MyBall<br />
BallDirX(I) = CInt(Rnd() * 3 - 0.5)<br />
BallDirY(I) = CInt(Rnd() * 3 - 0.5)<br />
BallX(I) = CInt(Rnd() * (Me.ClientSize.Width - BALL_WID))<br />
BallY(I) = CInt(Rnd() * (Me.ClientSize.Height - BALL_HGT))<br />
'randomize speed<br />
BallXSpd(I) = 3 + CInt(Rnd() * 8 - 0.5)<br />
BallYSpd(I) = 3 + CInt(Rnd() * 8 - 0.5)<br />
Next I<br />
Me.SetStyle(ControlStyles.AllPaintingInWmPaint Or ControlStyles.UserPaint Or _<br />
ControlStyles.DoubleBuffer, True)<br />
Me.UpdateStyles()<br />
timPong.Enabled = True<br />
End Sub<br />
<br />
Private Sub timPong_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles timPong.Tick<br />
<br />
For I = 1 To MyBall<br />
BallX(I) = BallX(I) + BallDirX(I) * BallXSpd(I)<br />
BallY(I) = BallY(I) + BallDirY(I) * BallYSpd(I)<br />
BallRct(I) = New Rectangle(BallX(I), BallY(I), BALL_WID, BALL_HGT)<br />
If BallX(I) < 0 Then<br />
Collided = False<br />
BallX(I) = 0 : BallDirX(I) = 1<br />
'choose random color<br />
MyBrush = Colors(CInt(Rnd() * 10 - 0.5 + 1))<br />
ElseIf BallX(I) + BALL_WID > Me.ClientSize.Width Then<br />
BallDirX(I) = -1<br />
Collided = False<br />
'choose random color<br />
MyBrush = Colors(CInt(Rnd() * 10 - 0.5 + 1))<br />
End If<br />
If BallY(I) < 0 Then<br />
Collided = False<br />
BallY(I) = 0<br />
BallDirY(I) = 1<br />
'choose random color<br />
MyBrush = Colors(CInt(Rnd() * 10 - 0.5 + 1))<br />
ElseIf BallY(I) + BALL_HGT > Me.ClientSize.Height Then<br />
Collided = False<br />
BallDirY(I) = -1<br />
'choose random color<br />
MyBrush = Colors(CInt(Rnd() * 10 - 0.5 + 1))<br />
End If<br />
Dim Collid As Rectangle<br />
Collid = Collid.Intersect(MyBat1, BallRct(MyBall))<br />
If Not (Collid.IsEmpty) Then<br />
BallDirX(MyBall) = 1<br />
Beep()<br />
End If<br />
Next I<br />
Me.Invalidate()<br />
End Sub<br />
<br />
Private Sub frmPong_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles MyBase.Paint<br />
e.Graphics.Clear(Me.BackColor)<br />
<br />
e.Graphics.FillEllipse(MyBrush, BallX(MyBall), BallY(MyBall), BALL_WID, BALL_HGT)<br />
<br />
e.Graphics.FillRectangle(MyBrush, MyBat1)<br />
e.Graphics.FillRectangle(MyBrush, MyBat2)<br />
End Sub<br />
Public Sub CheckCollision()<br />
<br />
End Sub<br />
<br />
Private Sub frmPong_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown<br />
Select Case e.KeyCode<br />
Case Keys.Up<br />
MyBat1.Y -= 10<br />
Case Keys.Down<br />
MyBat1.Y += 10<br />
<br />
End Select<br />
End Sub<br />
End Class
thanks again ;)
still i have to do some more but main job is done
byyyyyyyyyyyy for now
have a nice time
|
|
|
|
|
I can't find double click on combo box.. i only have mouse double click event.. but it doesn't work.. is there any switch, something in the properties that i need to set?.. Pls Help, and thanks in advance..
|
|
|
|
|
The ComboBox doesn't expose a double-click event. Frankly, it's not inuitive to double-click on anything in a ComboBox, so why would you need it?
|
|
|
|
|
Thanks for replying..
My situation goes this way... my combobox holds the list of my contacts.. and if i want to view / edit Personal Information of that specific contact.. i'll just double click the combo box to show my contacts information form... In that way i can go to my contacts info by just double clicking my combox...
|
|
|
|
|
Hi!,
I am not trying to ask you to change the design of your app., but a feasible solution is an Edit button right besides the cboBox so that the user may select the comboBox item and then click on edit to edit the selected record.
This way the user is not forced to do any extra thing, since any which way he had to click TWICE to edit/view the record.
Hope this helps you out in some way or the other.
Happy Programming!!!!
Vaibhav Sharma...
|
|
|
|
|
Your right, but the company stantard is use to that.. hehehe... I just adapt it to my next project.. thank for sharing...
|
|
|
|
|
Make it any way you wish. The ComboBox still doesn't expose a double-click event.
ListBox and ListView, more traditionally used for what you describe, both expose a double-click.
|
|
|
|
|
|
Hi All,
In VB6's, Combobox has MatchWithList...
My problem is, i cant find the counterpart or equivalent of MatchWithList in VB 2005's Combo Box..
Does anybody knows where can i find it?
Please help and thanks in advance....
Widgets....
|
|
|
|
|
You're looking for the AutoCompleteMode and AutoCompleteSource properties.
|
|
|
|
|
Thanks alot is working...
Is there any property that will let me know if that AutoCompleteSource will nothing so suggest..? something like giving "true" if it suggested a string or "false" if it no suggested string?
|
|
|
|
|
Nope. You'd have to make your own version of the ComboBox to do that. Probably tracking how many characters the user actually typed against the length of the string in the Text property, maybe.
|
|
|
|
|