C# - Returning List Of Null-terminated Strings From External Function Into .NET
Mar 29, 2012
I am trying to call an external C++ function using VB.NET (answers in C# are fine, I can convert back) which returns a list of device names. This comes in the form of a pointer to a null-terminated array of null-terminated char arrays (correct me if I've misunderstood what I'm dealing with) with a function signature:
long GetNames(char*** names)
Most of the answers to similar questions I've found have involved something more like:
long GetNames(char** names, int length)
It appears from what I've read that I need to give it an IntPtr but I'm uncertain as to how this should be initialized, and in my case I don't know the length of the array. At the moment, in the VB module, I have:
<DllImport("MyExternal.dll", CallingConvention:=CallingConvention.Cdecl)> _
Function GetNames(ByRef names as IntPtr) As UInteger
End Function
I've tried calling the function by passing an IntPtr initialized as IntPtr.Zero or using Marshall.AllocHGlobal, but I always get an AccessViolationException.
Any ideas on how I should be calling this function and how I get the return value into a managed string array would be greatly appreciated.
EDIT: I've found a sample function call in native C as follows:
char **tmplist;
GetNames(&tmplist)
View 2 Replies
ADVERTISEMENT
Apr 3, 2009
is it possible for a VB.net function with a return type of integer to return null ?
View 3 Replies
Feb 1, 2010
Is there any way to convert null terminated string to normal string.I mean I can easily make a program to find the location of vbnull but there has to be a built in function for that.
View 15 Replies
Mar 29, 2011
I'm reading a binary file. Apparently its older, and some of its values are based not on position, but on null terminated bytes. Position 17 thru 35 represents a value, however, if their is a null byte at 30, then you get garbage if you try to read 17 thru 35 as a value...
I need to read, specifically, from 17 to 29 in this instance because pos 30 is a null byte.
Have to read it byte by byte, no problem. Not sure though the syntax of comparing a null byte specifically.
If you need a sample of the binary file, I can post it.
View 1 Replies
Oct 5, 2011
Update: I didn't make it clear but I meant this to be a question about where/how I would use a function to return a list of strings when I'm trying to just work with classes.I have a class called Account.
I have data access class called AccountDAO.I have various functions that return lists of objects like GetAllAccounts, GetAccountByID etc.I want to populate a drop down list with just the account names and nothing else. It's proving rather slow when using lists of objects and databinding them to the dropdownlist.
I feel like I should be using a simple "Select Account_Name From blah" type statement and returning a list of strings but I don't know how to work this into my class and data access class.
View 4 Replies
Oct 16, 2009
Say I have a List(Of Tag) with Tag being an object. One member of Tag, Tag.Description, is a string, and I want to make a comma-separated concatenation of the Description members.Is there an easier way to do this than to read the Description members into a List(Of String) and then use the Join function?
View 2 Replies
Dec 16, 2009
Is there any way to convert null terminated string to normal string.I mean I can easily make a program to find the location of vbnull but there has to be a built in function for that.
View 1 Replies
Dec 12, 2011
My brain may just be fried since it's the end of the semester, but my teacher kicked this back to fix and resubmit...she said that I am "returning the name of your function rather than your variable name".
Here is my code for all 3 forms.
code:
These are forms to calculate the cost of getting a cell phone package.
View 6 Replies
Mar 9, 2009
I'm having trouble passing strings to a C++ DLL from my vb.net program. I get constant Read/Write memory error exceptions. My C++ code is as follows:
Code:
char * get_signal_desc(char * dev)
{
bool status;
char * desc;
[Code]...
View 1 Replies
Jan 11, 2012
Public Sub checkemail()
sqlcheckemail = "select Email from WEBUSER where Email='" + TBEmail.Text + "'"
Dim dscheckemail As New DataSet
[Code]....
if u see the one that i've commented is the one i already googled at tested...so now if the email address exist in the db..everything works wonderful..but if it doesn't exist the code should process the one that does not satisfy the first if statement...but now i'm getting the result as "There is something" eventhough the email does not exist in the db...
View 2 Replies
May 4, 2008
This may seem like a dumb question, but how do you set a default date for the datetimepicker or set today's date as default in the table?
For some reason the control (every instance I've inserted so far) returns a null value when I try to update rows without selecting or entering a specific date while the program is running. The date columns are required, and in at least one case I need the date to automatically return today's date.
In the properties I have chosen "values" for today's date, past dates, even future dates, but I keep getting the following error:
A first chance exception of type 'System.Data.NoNullAllowedException' occurred in System.Data.dll
When I review the details, VS tells me that the date column in question does not allow nulls. If I select a date while running the program, I don't get this error, so it seems like the default value is not getting set.
View 3 Replies
Jan 4, 2010
I have this function correctly linked in an external .js file...
function SubmitAge(age, UpdatePanelID, HiddenAgeID) {
$get(HiddenAgeID).value = age;
__doPostBack(UpdatePanelID);
}
and am calling it like this from an onClick of an a href="#" ... html tag (tags removed, please scroll right as stackoverflow has the greatest difficulty in displaying simple content, 7th display related edit,
[Code]...
Why on earth is HiddenAgeId, clearly passed just like UpdatePanelID, is returning an "Undefined identifier Error"??? its perplexed me to the point where i have no room to move! have i missed something guys?edit: Update: turns out it works perfectly (as it should) when i load it up in FireFox, but has the resulting error in Internet Explorer, this is not a browser compatibility issue, it should also work in IE, but it doesn't!
View 3 Replies
Feb 16, 2011
Having trouble importing a value from a .csv file to a .csv file. This this done because data needs to be massaged and the data file renamed. This is a user interface. Do not want to have the user touch the .csv in any way except upload to the application so the applicaiton can do manipulation. Either way here is the issue.
There is a column in the original .csv file that contains a zip code. The first row of the .csv has a value of 17003 in the zip code column. In the second row of the .csv the zip code column has a value of 11746-9984. The value in the zip code column from the second row always comes back as a Null value. My guess is that the OleDbDataAdapter is defining some kind of Schema. Again, the first row containing the zip code column probably insists the value must be numeric. When the data table field is established it probably gets defined as numeric. If that is true and the second row of the .csv zip code column is not numeric that must cause the zip code value to be Null.[code]...
View 2 Replies
Feb 4, 2011
I am still a newbie with VB. If I return a number the if statement works fine, with opening the new form and updating it as needed. Id the if statement returns a Null from the database it crashes.
[code]...
View 2 Replies
Apr 8, 2010
I am storing some user settings by the very handy My.Settings classes in VB.net and it seems to be taking a mixed case string (a file path and filename) and returns it in all upper case.
View 2 Replies
Jun 9, 2009
I have this function correctly linked in an external .js file...
function SubmitAge(age, UpdatePanelID, HiddenAgeID) {
$get(HiddenAgeID).value = age;
__doPostBack(UpdatePanelID);
}
and am calling it like this from an onClick of an a href="#" ... html tag (tags removed, please scroll right as stackoverflow has the greatest difficulty in displaying simple content, 7th display related edit, thanks stackoverflow)
a href="#" onclick="SubmitAge(24, 'ctl00_MainContent_arFrom_upAgeRange', 'MainContent_arFrom_HiddenAge')" runat="server" 24 /a
yet, i am getting this error, and its being called on the first line of the SubmitAge function (line with $get(HiddenAgeID)... etc...)
Error:Microsoft JScript runtime error: 'null' is null or not an object
i've copied and pasted my WATCH windows in visual studio .net (vs2010 beta 2 using vb.net & c#) while the execution breaks inside teh SubmitAge .js function...
age 53 Number
UpdatePanelID "ctl00_MainContent_arTo_upAgeRange" String
HiddenAgeID Undefined identifier Error
Why on earth is HiddenAgeId, clearly passed just like UpdatePanelID, is returning an "Undefined identifier Error"???
edit: Update: turns out it works perfectly (as it should) when i load it up in FireFox, but has the resulting error in Internet Explorer, this is not a browser compatibility issue, it should also work in IE, but it doesn't!
View 5 Replies
Nov 18, 2010
I am finding this weird issue. When I do this > activities.Where(Function(a) (Not a.IsDeleted And a.ParentId = 100) It returns an in-memory query & when I try opening it up, it throws a object not set exception. This only happens when there were no items which satisfied the condition. Shouldn't it be returning an empty set? When there are items satisfying the condition, then it returns a list & works all good.
View 1 Replies
Jan 5, 2012
In my VB.NET application when I try to get the image location using picturebox.ImageLocation (path), it is returning null. I have to use that path string in filestream's parameter to open it. Since it is returning null, I couldn't open the file (image) in filestream. The following error is coming:
"Path cannot be null"
This is my code:
Dim path As String = Picturebox1.ImageLocation
Dim filestrm As FileStream = New FileStream(path, FileMode.Open)
Dim arry(filestrm.Length - 1) As Byte
filestrm.Read(arry, 0, filestrm.Length)
View 6 Replies
Apr 3, 2012
My code seems to behave a way I don't understand. Sometimes it returns null as expected and sometimes it returns a value when its supposed to be null. How can someone explain this? Here is the code that selects from access and displays the result in a messagebox:
cmd5.Connection = cnn
cmd5.CommandText = "SELECT receipt_num " & _
"FROM brought_coffee, farmer where crop_year= " & yr & " and " & _
"brought_date=#" & dtt & "# and farmer_centre='" & ctr & _
[code]....
View 1 Replies
Sep 9, 2011
I have a situation where I have a vb.net program that uses two connection strings. This program will be used on multiple web servers on multiple domains and the only difference for any of them is the two connection strings.What would be the best solution to read in these connection strings from a file separate from my actual .vb code?
Ideally I want to be able to drop the .vb and the connection string file into its own folder on any number of asp.net websites and not update anything else (for example add any connections to the web.config or anything) than the external file containing the connection strings, I assume something like xml would suffice?
View 2 Replies
May 3, 2012
i have issue returning a list in a web method. here is the code
<WebMethod()> _
Public Function getTags(para_parents As String) As List(Of getTypeDetailsByParentName_Result)()
Dim context As New PPEntities
[code]....
the error is
Value of type 'System.Collections.Generic.List(Of SaftyonRoad.getTypeDetailsByParentName_Result)' cannot be converted to '1-dimensional array of System.Collections.Generic.List(Of SaftyonRoad.getTypeDetailsByParentName_Result)'
View 1 Replies
Aug 5, 2010
I have a list of strings. For each string in that list, I want to prepend another string. I wrote a method to do it, but I was wondering if there was something already in .NET I could use to do this. It seems like something that could be built in, but I was not able to find anything.
Here is the method I wrote:
Private Function PrependToAllInList(ByRef inputList As List(Of String), ByRef prependString As String) As List(Of String)
Dim returnList As List(Of String) = New List(Of String)
For Each inputString As String In inputList
returnList.Add(String.Format("{0}{1}", prependString, inputString))
[code].....
It works, but I would rather use built in functions whenever possible.
View 5 Replies
Oct 16, 2009
I'm migrating from VB6 to VB.NET, in hence my questions below:
I have to write a function that returns array of strings.
How can I initiate it to empty array? I need it since I have to check if it's empty array after it returns from this function.
Is list of arrays better for this purpose? If I use a list - Is it empty when it firstly defined? How can I check it it's empty?
View 3 Replies
May 23, 2012
That was probably bad title, but I'll illustrate what I'm trying to do. I have a method in a class that I need to call several times. The method returns a List(Of String). I'm just grabbing some information from a database.
VB.NET
Public Function GetTestList() As List(Of String)
Dim int As Integer = 0
[code]....
View 4 Replies
Feb 24, 2011
I have a school project i am working on wich i am to build a program that randomly generates 500 alpha-numeric numbers (license plate numbers). the program needs to be able to search the 500 numbers and based on given criteria (a text box) that you put in return the matching results to another listbox. I got the 500 plate numbers to generate on form load but have been searching thru my textbook and cant seem to figure out how to take the imput from the text box and search the list box. Not asking for a ton of help but just a point in the right direction. i attached the assignment i was given from instructor.
[Code]...
View 5 Replies
Mar 14, 2011
This is related to my last question.Even though Access considers Nulls and zero-length strings (ZLS) separate values, often developers wish to treat them as equivalent for the sake of an If...Then statement or some other stretch of code. One way to accomplish this is to write code like this:
' Not so efficient
If IsNull(varAge) or varAge = "" Then
' do something
[code].....
View 4 Replies
Jan 12, 2010
How can I change the following code to write to the database null instead of empty strings?
Public Sub SetChangeRequest(ByVal referenceLeaseID As Integer, _
ByVal referenceCustomerID As Integer, _
Optional ByVal custUnitNum As Object = Nothing, _
[CODE]...
View 6 Replies
Apr 8, 2011
I got this problem, is there way to use "replace" function to replace multiple strings of same list?
Like;
Dim rList As List(Of String)
rList.Add("A")
rList.Add("B")
[Code]....
View 3 Replies
Dec 14, 2009
returning a function value? I have a simple function that returns an integer. This function works fine when executed in SQL Developer but, when called from my apps, it always returns 2 regardless of anything. I have checked it over and over again, I cant seems to find where I am going wrong.
[Code]...
View 6 Replies
Apr 20, 2009
what changes I need to make to the code so that when no value for intPosition is found the textbox txtRoomNumber remains blank? At the moment a value is being entered into the textbox when no value for intPosition is found.
Code:
Private Sub btnFindRoom_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnFindRoom.Click
Dim strRoomType As String
Dim intRoomNumber As Integer
[code].....
View 2 Replies