Can Still Get Safearray And Bitmap STRUCTURES (not Classes) In .NET 2005

Sep 27, 2009

I have tried this question several times, sometimes a little in the face of MS VB teams but with no constructive answers. Perhaps with too much rant. I suspect that VB.NET does not allow me to do what I can easly do in VB5.0. The VB team should easily be able to supply the information I need, but have not yet answered the questions. I want to do a lot of work on very large bitmaps (20 Mp or more; 80Mb or more ARGB) using arrays for access. This I used to do in VB5.0 using the SAFEARRAY and BITMAP STRUCTURES. NOT the corresponding .NET CLASSES. But I now need to use an SDK requiring .NET. However, through lack of wisdom, the VB team dropped 5 critical resources on the move to VB.NET - VarPtr, VarPtrArray, the 2 structures and CopyMemory. The SAFEARRAY CLASS seems to lack a set method for array data and the BITMAP CLASS seems to lack both get and set methods for data. On building a .NET solution using VB.NET, c#.NET and C++.NET projects I could not locate the set and get methods. Interop could not upgrade my VB5.0 to VB2005 - presumably on account of these 5 problems. I was surprised that even C++ suffered too. .NET hurts. So, first off, two critcal simple questions: A) Bearing in mind that much of the .NET is tinsel-wrapped APIs, does a pointer to an array still point to a defining SAFEARRAY STRUCTURE of the original format (NOT of course to a first element of an array). If that is so, I am lucky for I can then fill and use (perhaps) my own SAFEARRAY STRUCTURE by memory manipulation in C++. B) If the same applies to a bitmap pointer I can then perhaps do the same with BITMAP STRUCTURES. If that can be done I can hopefully work in a .NET solution containing C++ (for the pointer and mmory work) and VB2005 (for the rest of the work). I can then 1) in VB define two empty byte-arrays GLOBAL in VB.NET- Pic1() and Pic2(). They do not need to be dimensioned. SAFE FROM GC 2) in VB define two GLOBAL SAFEARRAYS to match the arrays, one with one and another with 2 dims matching the bitmap in size. SAFE FROM GC 3) move ByRef the 4 objects to VC++. STILL SAFE FROM GC, LEFT EXACTLY WHERE THEY WERE. 3) copy the BITMAP data pointers to the data pointers of the SAFEARRAYS. DOES NOT MOVE ANYTHING. 4) copy the addresses of the SAFEARRAYS to the corresponding arrays STILL DOES NOT MOVE ANYTHING, BUT JOB DONE. And then I will be able to process the images in seconds rather than minutes after moving only 4 4-byte numbers. I would welcome alternative sequences, provided they DO NOT involve put and set pixels or array elements on the trivial side and do not involve moving 80Mb of image data between "safe" and "unsafe" memory on the Herculian side. Else, as the Pic() ans Safearrays MUST point somehow to structures, WHAT EXACTLY ARE THEY, AND WHERE? I want to access them. If I can't overcome these 5 silly MS blunders I'll just have to build two uncoupled projects - one in VB5.0 and the other in VB/VC++ .NET. I'm not going to get involved myself with tinsel and gladwrap workarounds.

View 4 Replies


ADVERTISEMENT

Difference Between Classes And Structures

Oct 23, 2010

I know that Structures are value types and classes are reference type, i know that since structures are stored in stack they are faster to use i also understands that structures can not use the Inheritance concept but still in most examples i see i always see that the authors use classes when building something like BBL library, if structures is light-weight compare to classes and i don't need it to be inherited should i use structure instead of class?is there a rule of when to use class and when to use structure ?

View 2 Replies

Structures Versus Classes?

Feb 3, 2011

I've been programming a custom structure to use in my program for a while now and I am debating whether I should switch over to using a class instead. Reason being is because I've read from a few sources that structures should be kept for simple storage of primitive types. However, I am using my structure to store a few integers and a few custom classes of my own.I haven't noticed any slowdowns or performance issues but I do know that I have to update the actual variables in the structures since they are value types and not reference types.

View 5 Replies

VS 2010 - Classes Vs Structures?

Dec 11, 2011

For the time being I have been using a Structure to store "people" (their name, gender, age, etc...), because I really love to refer to something like Mike.name or Caroline.age, so I could simply put Caroline.age += 1 anywhere in the code and here you go, Caroline is one year older. No more simpler.But because of how inflexible (compared to Classes) Structures appear to be, when I needed to iterate through all the instances I was forced to use a list or dictionary so I could use a FOR EACH ... NEXT block. That was resolved by you people in the previous post, but I'm having the problem that I couldn't use the elements of the list to change the original instance of the Structure proper... I mean, if I code something like this...

For Each thisperson As Person In peoplelist
If thisperson.name = person_selected Then
'person_selected is the SelectedItem.ToString of a listbox[code]....

Well, I thought that thisperson.teamleader and Mike.teamleader were going to be equivalent (when the IF statement was true, that is) but that doesn't appear to be the case. So right now I'm really hating Structures...But when I look into Classes... well, they have more flexibility, yes. You could construct a FOR EACH block without any other trick like the "on-top" list, and that it's very useful indeed, but (a big "but" IMHO) I lose that NICE feature that makes possible to write the name of one of them instances like Mike.age or Caroline. kills

I mean, if I wanted to add a year to Mike, well... there is no "Mike" in the first place. A "Mike" string could be a property for the class, but I cannot (or know) magically refer to him with the ease of a Structure, so when I want something so simple as Mike.age +=1 ...well, with a Class I'm simply clueless to how locate him and change ANOTHER property of him.I suppose I am doing something very wrong, because I cannot believe VBasic could force on you those two extreme philosophies...:

Classes = +flexibility -usability ???

Structures = -flexibility +usability ???

What I want to do is SO simple that I cannot believe I need to choose between the two.

View 25 Replies

(2005) Arrays Of Structures Within Structures?

Jan 20, 2009

I have a structure called 'Scheme' and in my program I want (ideally) an ArrayList of 'Schemes' (so i can add, remove schemes etc.). However, within the 'Scheme' structure, I want to have an ArrayList of 'Item''Item' is another structure. Are there any solutions out there for iterating through these arrays quite easily?

How can I easily add multiple Items to a Scheme and mutliple Schemes to my Scheme array. Code is below. When I try to add Items to a Scheme, I get the 'Object not set to a reference of an object, try the 'New' keyword', but you cannot declare 'New' keywork within a structure.

[Code]...

View 4 Replies

C# - How To Group Enums Structures And Subclasses In Classes

Aug 21, 2010

I've heard bad things about overusing regions but when adding enums to my classes I put them into a #region "Enums" at the end of the class, and do the same with structures and even subclasses.

Is there a better/standard way to go about grouping such elements on classes?

(Note: this is tagged C#/VB but maybe the same situation exists for other languages, like Java)

View 1 Replies

VS 2005 Unmanaged API Using Structures/pointers And ***?

Aug 23, 2011

I am in the process of writing a tool to manage DHCP servers using the DHCP Server API. Its an unmanaged DLL so using it is a PITA at least for me it has been.Currently I am stuck trying to enumerate the IP ranges in a particular IP subnet. I am able to access an array of structures but I have only been able to access the first structure in the array of strucutres.Using this I can sucessfully access the first structure in the array.

Dim element_info_array As DHCP_SUBNET_ELEMENT_INFO_ARRAY
Dim element_data_ptr As LPDHCP_SUBNET_ELEMENT_DATA
...
element_data_ptr = DirectCast(element_info_array.Elements, LPDHCP_SUBNET_ELEMENT_DATA)

However when I use this to try and loop through them one at a time it does not work. The ptr returns 0 is null.

Dim element_info_array As DHCP_SUBNET_ELEMENT_INFO_ARRAY
Dim element_data_ptr As LPDHCP_SUBNET_ELEMENT_DATA
For i = 0 To size

[code]....

The sizeof for DHCP_SUBNET_ELEMENT_DATA could be off due incorrectly setting up the union structure for it. I was not sure how it define it so that only the first ElementType and one of the other components is avalible at any given time. It wont even read the first pointer though so that has not even come into play yet.

<StructLayout(LayoutKind.Sequential)> _
Public Structure DHCP_SUBNET_ELEMENT_DATA
Public ElementType As DHCP_SUBNET_ELEMENT_TYPE

[code]....

View 3 Replies

How To Return SafeArray From C++ (ATL)

Apr 20, 2012

I created a ATL project and I got a function like

idl File:
[id(1)] HRESULT COM_TEST( [in] int parm_count, [in, out] SAFEARRAY(PARM) *parm, [out, retval] short *return_code )
cpp file:
STDMETHODIMP CTEST::COM_TEST( int parm_count, SAFEARRAY **parm, short *return_code

[Code].....

My question is how do I input a array and output it?

View 1 Replies

Initializing A SAFEARRAY Ref In C# (port From VB?)?

Nov 21, 2011

I am working with a third-party COM component (i.e. do not have its code). The method in question has the following outline:

HRESULT GetTableInfo(
[in] BSTR bstrTableName,
[in,out] SAFEARRAY(BSTR) bstrColumnTitles,
[in,out] SAFEARRAY(long) lColumnPos );

I have tried to pass a ref to a fixed-size array ((Array)string[6]) and to a List.ToArray(), but it keeps crashing on me. E.g.

Array arr1 = (Array) new string[500];
Array arr2 = (Array) new int[500];
table.GetTableInfo(filename, ref arr1, ref arr2);

To be more specific: I already tried any value for the size (the correct one should be 44). Tried the same for the capacity of a List<>, but that didn't help either. I also tried different types, but it does not accept any other than int.

I don't know why it keeps crashing on me with a general error of that COM component (basically indicating that something is wrong, yet not saying what exactly), since I can confirm that the following VB code works:

Dim TitleList() As String
Dim PositionList() As Long
Call objTable.GetTableInfo(txTableFile.Text, TitleList, PositionList)

View 1 Replies

VS 2005 Add Text To Bitmap?

Jun 17, 2009

I want to add some text to a photo (held in a bitmap) but rather than write over the photo itself I want to add a small black bar to the bottom of the image and write some white text in it.

e.g. a 640 x 480 photo becomes 640 x 510 with the black bar at the bottom.

View 3 Replies

VS 2005 Tell If Pixel In Bitmap At Position Is Transparent?

Dec 19, 2009

I have a bunch of PNG images in my project's resources. I need to find out whether the pixel at any X,Y is transparent or not. Testing the alpha of the color returned by GetPixel doesn't work, and I can't test it against the transparency key because Bitmap objects only have a MakeTransparent method, for some strange reason. Is there a way to tell?

View 2 Replies

System Memory In Bitmap - Using Bitmap To Show Picture Box Like Slideshow Using Timer

Jul 3, 2011

I'm using Bitmap to show picture box like slideshow using Timer. For each timer interval, I've to go for new instance of Bitmap, there System memory increases to 1MB, How to resolve this, 'BG is picture box

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tic Dim img As Bitmap

img = New Bitmap(System.Drawing.Bitmap.FromFile(FileIO.FileSystem.GetFiles

[CODE]...

View 1 Replies

Use A ToolTip Directly To A Bitmap Object (System.Drawing.Bitmap)?

Dec 15, 2010

I'm trying to use a ToolTip directly to a Bitmap Object (System.Drawing.Bitmap), aparently I can't do this because Bitmap isnt a Windows Control.

View 1 Replies

VS 2005 Referencing Classes In Another Project?

Jun 30, 2010

I'm making an application that will be available as both a Windows App and an ASP.Net App. The web app has a much scaled-down version of the functionality of the window app. I want to reference the classes contained with the windows app from my web app. The thing is, my classes in the windows app may have some modifications: if I reference them in my web app, will this pick up the changes made automatically? Also, referencing the project is for development work, when I go to deploy the web app, I will probably need to reference the classes as dll's. So the next questions are: 1. Is this the right way to go about doing this?
2. How do I make the Classes I have into self-contained dll files?

View 2 Replies

Create Monochrome Bitmap From Semi Transparent Bitmap?

Sep 17, 2011

how can i create a monochrome bitmap from a semi transparent bitmap in vb.net? the bmp is for a transparency mask image for an icon i'm trying to create with the CreateIconIndirect API function.

i'm using vb2008 .Net3.5, but i would prefer an answer that would also work in vb2005

View 9 Replies

VS 2005 Calculate The Volume Of A Cube With Classes?

Mar 20, 2009

I already have this code in my class file:

Public Class Cube
Private sngLenght, sngWidth, sngDepth As Single
Public Property Lenght() As Single

[Code].....

View 11 Replies

VS 2005 Encryption/Decryption With Crytography Classes?

Aug 25, 2009

I'm using the cryptography classes in .net to encrypt and decrypt files. When I encrypt a txt file, then decrypt in my code it works fine. But when I encrypt an xml file and try to decrypt it within my code I get an error saying "padding is invalid and cannot be removed." I am setting the padding during both the encryption and decryption as:

PaddingMode.PKCS7. Do you think the file being an xml file has something to do with the error that's occuring? Also, should I or should I not be setting the padding for both encryption and decryption?

View 5 Replies

Structures And Arrays Of Structures?

Jun 2, 2010

I read in the Book "Mastering Microsoft Visual Basic 2008" about "User-Defined data types".The example given is creating a Structure as follows.I wanted to check that so I wrote all the code given; I used a TextBox and a Button for this.(I didn't include the "CheckDate" here; that is in the book)

Structure CheckRecord
Dim CheckNumber As Integer

[code]....

The problem is this does work.What I get is "00000". and I found out that the "Checks(4)" Array does hold any value ie: on keeping the cursor over that, it shows "CheckAmount 0.0, CheckNumber 0 , CheckPaidTo Nothing ".

View 1 Replies

VS 2005 Modules Vs Private Classes With Shared Members

Mar 28, 2011

I've read that modules are basically shared classes. For a module though, you can call a method directly without prefixing the module name. So I can do this: methodTest("abc", mod1Enum.enum2)But for a class with shared members I have to fully qualify the method call, and in this case fully qualify the enum:[code]In our conversion from VB6 to .NET the need to fully qualify all calls like this might be an argument for us to bring our VB6 modules over as modules instead of converting them to classes.

View 7 Replies

VS 2005 OOP Classes - Can't Clear List Of Data Saved

Dec 3, 2009

bare with me here ok I posted on here a while back, like month to 2 months ago about creating an array of data (user inputed data). But was suggested to go the class route. After weeks of lengthly reading came up with a list collection class.

[Code]...

View 4 Replies

VS 2005 - How To Make Custom Base Classes Available To Future Programs

Oct 22, 2010

I have written multiple programs in the past that deal with cad data. Points, lines, arcs, etc. For each program I ended up creating slightly different versions of some really base classes like a class that defines a point:

<Serializable()> Public Class Point
Public x As Double = 0
Public y As Double = 0
Public z As Double = 0
End Class

My question is how would I use that class in such a way that it could be in a namespace and imported into any future project that I write?

View 2 Replies

Extraxct A Rectangle Bitmap From A Big Bitmap?

May 26, 2011

Here is a short program to demonstrate my question. I just want to extraxct a rectangle bitmap from a big bitmap.Code as follows:

Private
Sub Button3_Click(ByVal sender
As System.Object,[code]....

Execution stops when hitting the Dim cloneBitmap statement, which should have created a bitmap out of the rectangle cut out.The message is:

"MissingMemeberException was unhandled.

No default member was found for type 'bitmap"

I just don't get it. Seems that the method Clone(Rectangle, PixelFormat was not found.

View 8 Replies

Parameter Is Not Valid - Bitmap Bmp = New Bitmap()

Feb 10, 2010

I have a grass image located here in my directory. I want to just create a Bitmap, but I am getting an error. (Parameter is not valid.) Immediate Window: A first chance exception of type 'System.ArgumentException' occurred in System.Drawing.dll

[URL]

private void Form1_Load(object sender, EventArgs e)
{
Bitmap bmp = new Bitmap("grass.jpg");
}
bertino

View 3 Replies

Use LINQ To Filter Collection Of Nested Classes To Yield Dictionary Of Unique Properties Of Those Classes?

Jan 23, 2012

I have two classes, one nested in the other. [code]Neither "Name" or "ID" are unique between operations and records.I wish to construct a dictionary using LINQ = Dictionary(Of String, Of List(Of Integer), whereby the keys are uniqe examples of Names in my collection and the values are the collective set of distinct IDs that are associated with those names.

View 2 Replies

VS 2010 Structure Classes So That The User Interfaces Though A Single Class While The Supporting Classes Are Hidden From Their View?

Jun 13, 2012

How can I structure my classes so that the user interfaces though a single class while the supporting classes are hidden from their view? I think its best understood in an example:

Public Class MyInterface
Public Economic as EconomicClass
Public Sub New()
MyBase.New()

[code].....

So you might ask why am I even separating them? It's strictly for others who will be working with this interface. I need to funnel them though a logical structure:

interface.Economic.MyMethod
interface.Currency.MyMethod
etc

This way everything is already handled for them in the background and they only need to run the method they need. I don't know if I can have it both ways in VB.NET.

View 23 Replies

VS 2010 Calling Subs And Functions Within Classes That Are Within Classes?

Oct 24, 2009

Here is some example code of what I mean:

vb
Public Class Form1
Private Sub Button1_Click(ByVal sender as Object, e as systemEventArgs) Handles Button1.Click

[Code]....

View 5 Replies

Create A List Of Structures Within A List Of Structures?

Jul 20, 2009

I'm attempting to create a list of structures that contains a list of structures. I can't seem to figure out how to properly allocate the object for the inner list of structures. I expect the outer list of structures to have a couple thousand entries and the inner list of structures to be fairly small at 2 to 10. Both lists will grow over time but the number of elements within the inner list will be constant for an instance of the outer list. Meaning, if an instance of the outer list has 2000 entries each of those will have the same number of elements on the inner list, say 4 entries.

Here is a simplified code fragment. This fragment makes no attempt to create the instance of the inner list "StructBlist" since I can't figure out where to put it. Tried "New List(Of StructB)" in the declaration as well as "Alist(0).StructBlist = New List(Of StructB)" but neither works.

Public Class Form1
Structure StructA
Dim FieldA1 As Integer

[Code]....

View 5 Replies

Derived Classes Cannot Raise Base Classes

Jul 10, 2009

I m trying to raise Click event of Textbox explictly but I m getting "Derived classes cannot raise base classes" error.[code]....

View 1 Replies

Creating .BMP File From Bitmap.Save(Path, ImageFormat.Bmp) Differs From Using Bitmap.Save(Path)?

Oct 1, 2011

The code below reads an Icon from an .ico file, converts the Icon read to a Bitmap and saves the bitmap using:

Bitmap.Save(PathA)
Then does:
PanelShowWrittenIconA.BackgroundImage = New Bitmap(PathA)

[code].....

View 2 Replies

Loop And Enumerate Properties Of Nested Classes In Nested Classes?

Sep 24, 2010

so far i got

code
For Each item As Reflection.FieldInfo In GetType(NameSpace.ClassWithNestedClasses).GetFields
rtfAppend(item.Name & ":" & Tab & item.GetValue(Me))
Next
For Each item As Reflection.PropertyInfo In GetType(NameSpace.ClassWithNestedClasses).GetProperties()

[code]...

which gets me the simple string vars and properties of my top class, but how can i apply this to loop through all sub classes and get there vars and props?

View 1 Replies







Copyrights 2005-15 www.BigResource.com, All rights reserved