Get The Values Of The Parameters Of A Calling Method?
Oct 19, 2011
I am writing a alternative to GDI, and rigth now i am working at a logging function. The idea is that while you use the class to draw, it will write a logg of what you have done, which can be used to draw it back later. In that way i would be able to store a drawing with weary little disk usage.
I have the following test method (VB.NET) <RowTest()> _ <Row(1, 2, 3)> _ Public Sub AddMultipleNumbers(ByVal number1 As Integer, ByVal number2 As Integer, ByVal result As Integer) Dim dvbc As VbClass = New VbClass() Dim actual As Integer = dvbc.Add(number1, number2) Assert.That(actual, [Is].SameAs(result)) End Sub My problem is that when the test runs, using TestDriven.Net, the three method parameters are 0 and not the values I am expecting. I have referenced the NUnit.Framework (v.2.5.3.9345) anf the NUnitExtension.RowTest (v.1.2.3.0).
When I am loading an Assembly dynamically, then calling a method from it, I appear to be getting the method from Assembly executing before the code in the method that is calling it.It does not appear to be executing in a Serial manner as I would expect. Can anyone shine some light on why this might be happening. Below is some code to illustrate what I am seeing, the code from the some.dll assembly calls a method named PerformLookup. For testing I put a similar MessageBox type output with "PerformLookup Time: " as the text. What I end up seeing is:
First: "PerformLookup Time: 40:842" Second: "initIndex Time: 45:873" Imports System
Let's say I have a page Test.aspx along with test.aspx.vb.Test.aspx.vb contains a class name "TestClass". In that class I have method1(), method2() and method3()I need to be able to call one of those methods, but I can't hard code it, the method to be executed comes from a string.
I can't do Select Case StringContainingTheNameOfTheDesiredMethod Case "Method1"
DELIMITER $$ CREATE DEFINER=`root`@`%` PROCEDURE `Check1`( IN P_Name VARCHAR(50) ,OUT P_Id INT
[code]....
as various columns I need use VB .Net to call this procedure, insert value into the database and get the ID (primary key - company ID).Whenever I insert a row, I need to retrieve the ID. Right now, I am able only to insert the row, but don't know how to call a SP with both input and output parameters from VB.
I'm program to handle ftp multiple file transfers. What I had in mind was to create an array for each type of file I need to process. There are 8 file types each needs to be transferred to a unique host.
' Each array contains in order: FILENAME|SOURCE PATH|DESTINATION PATH|HOST|USERNAME|PASSWORD Dim arrA() As String = {"*a*.dat", "/destpath1/", "host1", "id", "pass"}
I am trying to print (to a text file) the fragmentation information give by Win32_Volume class using the DefragAnalysis method and have come up with the following VB.NET code:
Dim objReader As StreamWriter objReader = New StreamWriter(FolderBrowserDialog.SelectedPath + "FragInfo" + "_" + CreationDate + ".txt") Dim colItemsFragInfo As New ManagementObjectSearcher("rootCIMV2", "Select * from Win32_Volume where DriveType = 3")
[code]....
You do not need to defragment this volume.However executing this in Visual Studio returns the below:
Volume size: MB Cluster size: MB
You do not need to defragment this volume.The point here is though it does NOT work under Windows Server 2008 R2, but does work under Windows Server 2003 (when executed in Visual Studio), WMI Code will work regardless of platform.
NB: i have played with the "Console.WriteLine" and changed it to "Debug.WriteLine" to output value to immediate window.
Basically i've got a web service that i'm trying to put some kind of usage logging in. To do this i've created a class with a logging method. I instatiate the class on the service and then call the logging method in each of the web methods.
I am trying to call a method which has two parameters using thread. How can I do this? If I pass parameter to my thread.start() method, it is giving error.
How would I go about passing parameters to a method? I would want to do the following: Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load ReceivingUdpClient = New System.Net.Sockets.UdpClient(6767) Dim receiveBytes As [Byte]() = ReceivingUdpClient.Receive(RemoteIpEndPoint) Dim ThreadReceive As New System.Threading.Thread(AddressOf receiveMessages(receiveBytes)) ThreadReceive.Start() End Sub Private Sub receiveMessages(ByVal receiveBytes As Byte()) 'INSERT CODE <br/> End Sub
I have a .dll file (Interop.ACTMULTILib.dll) that I use to connect to a PLC. This .dll contains a sub called ReadDeviceBlock2(byval devicename as string, byval size as integer, byref data as short).My console application startup thingy is a module. When I call this method in my main it works fine, if I call it from another method that was called by main it works as well.However, it doesn't work when I call it from my Timer_Elapsed sub? I guess this has to do something with threads but I can't figure it out.
Module Main Private Timer As New System.Timers.Timer Private PLC As New ACTMULTILib.ActEasyIF Private DataSet As new DataSet
I have a project that has some VB code in it that I'm not allowed to convert to C#. I work in C# and not very good at VB, but I am needing to modify that VB code to use some C# methods I created.
For example:
C#: Code: using MGCIS2.Reporting; using CrystalDecisions.Shared;
[code]....
At this line in the VB code (Dim crv As New Tax.Reports.CrystalReportViewer(_rdbc)) it is giving me an error:Too many arguments to 'Public Sub New()'
I am having some problems calling the First() method of the System.Collections.ObjectModel.Collection(Of T) class. My front-end web application is VB.Net 3.5, and the data access layer is C# 3.5. Here is pretty much the sample code I have:
I have a form call form1 which is a mdi tab. Within form1 there is a datagridview and a button. When the button is clicked it will fire a method within form1 to update and repopulate the dgv.
Now my problem now is that I have another form call form2 which I load using .showdialog. Whenever I update the data within form2, it will fire method from form1 and update the dgv in form1. However the dgv doesn't seem to repopulate the updated data.
I've got some debugging code that looks like this[code]...
The purpose of this code is to output the name of the calling method. Now, I would like to output the FILENAME where the calling method resides. Is this information available?
I have an inline lambda expression that I would like to use throughout my application. I just can't seem to find a reference on how to do this with more parameters than the element being tested. Here is a quick example of what I currently have.
Private Sub Test() Dim List As New List(Of String) From {"Joe", "Ken", "Bob", "John"} Dim Search As String = "*Jo*"
Is there a way to create a method with unknown number of parameters? And if it this the case: How is it possible to get access to them within this method? Do they have to be from the same type?
I was familiar with the optional parameters in vb 6 and it made sense given the capabilities of the language but why the heck does VB.Net support optional parameters when there is method overloading? Which one should I use and is there a difference? If there is a difference when should I use each one?
A friend in work suggested the use on classe to store the parameters BEFORE call a method. He's said this is called "Abstract Class". My "know how" of VB.NET is small... so, I want to know of you what mode is the best way: Call a function/sub like that:
I am using a .dll called Kiosk in my application which is resonsible for disabling some keyboard keys. I am doing like this... using Kiosk; public static Kiosk.Kiosk KIOSK = new Kiosk.Kiosk();