In a current project I have to transfer big amounts of memory between separate programs in memory (average 10k/sec, sometimes 100k/sec).
I came up with shared memory (aka memory mapped files) as a solution. TCP is surely too slow and has far too much overhead.It works great in VB6 (in which one program is written) - very fast, few lines of code.One program has to be written in VB.net because it must interface to a library that does not support VB6. Unfortunately I cannot find a way to transfer the working code completely to VB.net.
In VB.net I can get a handle to the memory mapped file (created and written to by the VB6 program), a pointer to the memory but good old "rtlMoveMemory" does not give me access to the data as expected from VB6.The data stored in the memory mapped file does not arrive in the variable (stays 0). No error messages.
Private Const PAGE_READWRITE As Long = &H4
Private Const FILE_MAP_WRITE As Long = &H2
Private Const STANDARD_RIGHTS_REQUIRED As Long = &HF0000
I built an application that runs alright on Windows 7 and and XP but when I tried that on my home computer (Vista Home Premium),at very start, it says Can not open shared memory region and then it quits.
I am a .net beginner trying to make a crossover from vb6. I am trying to copy bytes of integer to a variable but I am getting this error msg. PInvokeStackImbalance was detected
A call to PInvoke function 'Tutorial_Class Dog!WindowsApplication1.ModAPIFunc::CopyMemory' has unbalanced the stack. This is likely because the managed PInvoke signature does not match the unmanaged target signature. Check that the calling convention and parameters of the PInvoke signature match the target unmanaged signature.
Module ModAPIFunc
Public Declare Sub CopyMemory Lib "kernel32" Alias _ "RtlMoveMemory" (ByVal Destination As Long, ByVal _ Source As Byte, ByVal Length As Integer)
It works, when I make getBar methods public, but I don't want to expose these unneccessarily. Why I can't call private shared methods from a public one in the same class is over my head. I'm using .net framework 4.0 in a web application.
I've taken over the maintenance of the website (ASP.NET VB) and on one particular page I noticed the below code
Inherits System.Web.UI.Page Public Shared UserNumber As String Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
[Code]....
My question is whether the variable UserNumber can be accessed or changed by any other user than the current one?
Given in the following language specification, for me at least, calling Db.Foobar() [In the following code] does not indeed call off to the Shared Constructors of the base classes. I am curious as to a) is this my own fault for doing something wrong or b) is this an error in the language specification[code]...
In VB 2005, I am calling a C++ DLL function that returns the address in memory and size in bytes of a jpeg image. How can I load that jpeg image directly from memory into a picture box in my VB form? I cannot afford to save it to disk first.
Im getting a problem with one of my programs I have made in visual basic.NET where it gives me a memory error when i debug the program in the IDE. the exact error is this: "Attempted to read or write protected memory. This is often an indication that other memory is corrupt". My program basically has a few forms with text fields on that get their text values from an access database on the same hard drive. Im wondering if im doing something wrong because my program just seems to eat up memory whenever it does anything. For example I have one form that has a combobox on it and when you change the drop down list selection it retreives a few strings from the database and puts them into the relevant text boxes, if you keep changing the selection then the memory usage (in task manager) just keeps going up and up. occasionally I get the error mentioned above when debugging but in my built version of the program it throws an exception everytime the memory usage gets past 49K.
Also I noticed when debugging in the "immediate window" frame I get the following message often:A first chance exception of type 'System. Invalid OperationException' occurred in System.Data.dll...Do I need to somehow be "releasing" the memory that is used to gather data once it becomes redundant?
Attempted to read or write protected memory. This is often an indication that other memory is corrupt. Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
QuoteSystem.AccessViolationException was unhandled Message="Attempted to read or write protected memory. This is often an indication that other memory is corrupt." Source="System.Windows.Forms"
Im designing a web browser and i continue to receive this error after going to about 3 websites it crashes with that error.
I have a BackgroundWorker object that I instantiated to perform a DB process on a background thread ansynchronously. I have event handlers for DoWork and RunWorkerCompleted. I can tell that the BackgroundWorker is disposing of itself because I added a message box into the Disposed event handler.Is it necessary to detach the event handlers to ensure that the memory is cleaned up and that there are not memory leaks?
I've noticed that every time I start a new thread in my program, the memory usage jumps about 1000k and it never goes back down. I have ensured that the thread is no longer running, and only one instance of my worker thread is ever running at a time. I am using ThreadPool.QueueUserWorkItem and ASyncOperation to get stuff done. The program starts using a Sub Main in a module that uses STAThread; I read that using STAThread instead of MTAThread makes it impossible for the Garbage Collector to get in and consider objects for garbage collection. However, when I change the STAThread to an MTAThread, the WebBrowser control in my frmMain cannot be instantiated.
I get this exception:
Code: An unhandled exception of type 'System.Threading.ThreadStateException' occurred in System.Windows.Forms.dll
Additional information: ActiveX control '8856f961-340a-11d0-a96b-00c04fd705a2' cannot be instantiated because the current thread is not in a single-threaded apartment. I do threading with the WebBrowser control, so will using MTAThread fix my problem? If so, how should I partition my code so that the WebBrowser control won't be affected by the above exception? I call the thread repeatedly with a timer (although only one instance ever runs at a time), and my program's memory usage starts at about 5000k and can jump to 300,000k+ depending on many times the thread needs to be called.
I cannot use Visual Basic 2008 at all. When I go to "new project" and choose "Windows Form Application" I get this error.I have tried multiple uninstall/reinstall with no result.A microsoft reply to this suggested that I needed: " .NET Framework 2.0 Service Pack 1 " I checked, and I did not have the .netframework 2.0 service Pack 1. When I tried to download and install the above from Microsoft.com, the istaller said that "it was not allowsed" and I was not able to install the service pack 1.
I tried Uninstalling net framework 3.5, 3.0, 2.0 and then reinstalling .netframework 2.0 sevice pack 1; then reinstalling Visual basic 2008 express edition. At the reinstall of Visual basic 2008, .netframework 2.0 sevice pack 1 is unistalled by .net framework service pack 2.When I check the foruims for simiar problems, the formus are mostly for Visual basic 5.0, or other programs that I do not have.
Here is the programs I have installed:
Operating system: Windows XP Microsoft .net framework 1.1 Microsoft .NET framwork 1.1 Hotfix(KB928366) Microsoft .Net Framework 2.0 Service Pack 2
[code]....
All the security updates and hotfixes for Widows XP.
The follow code can be called about 6K times on the server it is run on then gets a out of memory error in the last catch statement. I don't see what is wrong with the code, it works well up until the out of memory..
Public Function AddUserToGroup(ByVal sSamAccountName As String, ByVal sGroupName As String) As Boolean Try Dim returnStatus As Boolean = True[code]......
I have two forms, Form1 and Form2. Form2 has a button to show OpenFileDialog. I call Form2 from Form1 by a button. My startUp Form is Form1. When i start debugging, i press my Form1's button to show my Form2, it shows, but when i click On Form2's Button to show OpenFileDialog it is giving me exception that
"Attempted to read or write protected memory. This is often an indication that other memory is corrupt."
When i set my startup Form to Form2 and click Form2's Button to show OpenFileDialog then it shows!
I seem to be drawing a blank. I'd like to create a "shared" variable that is shared with all instances of a class but not classes that inherit from it. For example.Class A: Shared list As New List(Of String): list.Add("A")
Class B Inherits A: list.Add("B")Class C Inherits B: list.Add("C")The end result I'd like is that any instance of A has just A in the list. Any instance of B has A and B in the list. Any instance of C has A, B, and C in the list. I can accomplish it by creating Instance variables, but I have to construct the list for each instance of a class. I'd like to construct it once for a specific point in the Hierarchy and then share it accross other instances of that class.
I am trying to add shared members in derived classes and use that values in base classes...
I have base
class DBLayer public shared function GetDetail(byval UIN as integer) dim StrSql = string.format("select * from {0} where uin = {1}", tablename, uin) end function end class
[Code]..
currently there is error using the tablename variable of derived class in base class but i want to use it i dun know other techniques if other solutions are better then u can post it or u can say how can i make it work? confused...
I have a new problem with this same Form Printing project and I get exactly the same exception but from the different point of code:
line 538: d.PrintFunction(c, typePrint, mp, x, y, extendedHeight, ScanForChildControls)
The exception type is System.AccessViolationException and it says (after I translate it from my own language in which the message is given in my pc, into English):"Protected memory was tried to be read or written. This often indicates that the other memory is damaged"
I am getting the following error: "Attempted to read or write protected memory. This is often an indication that other memory is corrupt". i am using interop service.
This code was put together for a one time run. It's purpose is to count all the pages in a group of images. After about 6000 of 1,250,000 images in ##X it throws an "out of memory" error. Besides it being thrown together for a one time run does anybody see anything obvious that could be causing the error?
is there a difference between shared events and non-shared events?
Private Shared Event EVENT_something_changed() Private Sub SUB_handles_something_changed() Handles Me.EVENT_something_changed End Sub
no errors with this code, but how is Me possible since the Event is shared. it seems like there's no errors between switching shared with un-shared and switching Me with Myclass, all 4 combinations seem to work, isn't that weird
We have a system that makes a use of 3rd party COM DLL written in vba We have a centralised web application and 1-50 client machines that must reference that COM DLL in order to use our centralised web application.
The COM DLL is going to be updated rapidly in the future, which means that it has to be re-installed on every machine manually.Is it possible to centralise this COM DLL somwhere on the network? Is there any other alternatives? Otherwise the maintenance overhead will be huge.
I've created a Class Library using vb.net, the thing is that several applications should use this file.
I'm using Inno setup, and I'm declaring the dll file to be shared.
in the client app i've added refrence to the dll and set "Copy Local" to false.
Now if i put the exe file (the client app) in the same folder with the dll everything works correctly, but once I move the exe or use another application that should use the so called shared dll the assembly cannot be loaded because the system cannot find him ("IOFileNotFoundException")
I'm working on a voice recognition project in VS 2010. I'm trying to use SpInProcRecoContext instead of the shared one. However, I'm running into issue getting my program to recognize when I'm speaking. When I use the shared one I can make it work just fine. But with InProc it never picks up my voice. Right now it should just take what you say and put it into a text box. Here's my
VB
Option Explicit On 'Default ImportsImports SystemImports System.DataImports System.DeploymentImports System.DrawingImports System.Windows.FormsImports System.Xml 'Custom ImportsImports SpeechLibImports SIMPLEAUDIOLib Public Class frmMain 'Dimension variables Dim WithEvents RecoContext As SpInProcRecoContext 'The Main Recognition Object Used throughout the whole program.[code].....
I am pretty new to multi-threading in general and I would like to know how can I lock a shared integer variable to not be accessed by other threads while it is read/updated by an other thread.When I try do do SyncLock myInteger, I get that error : Error 6 'SyncLock' operand cannot be of type 'Integer' because 'Integer' is not a reference type.
Here a simplified example of what I mean
Private Shared myInteger As Integer Private Sub MySub() SyncLock myInteger ' This does not work ' read/write a new value to myInteger End SyncLock End Sub
MySub is called by multiple instances of the class, and running in multiple threads?
I'm looking at a VB.NET class (that I didn't write) that is declared "MustInherit" (abstract in C#, I believe) that has three methods, all of which are defined as "shared" (static in C#). There are no properties or fields in the class - only the three methods. From an OO perspective, does this make any sense?
My thinking is no, because by making it MustInherit, you're essentially saying you can't create an instance of this class - you must inherit from it and create an instance of the derived class. But since all the methods are shared, you'll never actually create an instance of the parent class anyway, so the "MustInherit" does no good. You might as well not mark it MustInherit and just inherit from it whenever you want.
I have a problem with inherited classes. Have a look at the following VB.NET 2.0 / VS 2005 code:
MustInherit Class templateclass Public Shared x As String End Class Class child1
[code]....
The templateclass has a shared variable x which is of course inherited by the child classes. But I wonder that all child classes share only one x! Until now I thought that shared variables are only shared among the instances of a class, not among all childs. This is very annoying because I have a base class which I need in two slightly different versions and they should not "share the shared" variables. And because the classes have a lot of shared variables, shadowing each in the childs would be very..
Public Sub Share() Dim managementClass As New ManagementClass("Win32_Share") Dim inParams As ManagementBaseObject = managementClass.GetMethodParameters("Create")