|
Thanks, installing Microsoft office really helped.
y helothar noob
|
|
|
|
|
I am using BeginInvoke on a delegate to start a Sub. What will happen if I do not call EndInvoke on that delegate? I do not particularly need to monitor it or need to know if it is finished. I tried using threading but did not get it to work. Still trying though.
|
|
|
|
|
You might want to read Asynchronous Method Execution Using Delegates[^] on MSDN. Invoke and launching background threads are not 100% interchangable. Wheather one is better than the other depends on what you want to be done in the background. Sooo...
What are you doing on the background thread?
Are you having any problems with BeginInvoke/EndInvoke?
What were the problems you had with threading?
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
I'm checking for application updates on the background thread. My application does this once per day similar to Windows Automatic Updates. The problem I had with threading is that I was not able to pass arguments to the procedure I was calling. However, I've figured a way to work around that by making the arguments available to the procedure (thru a config file it reads). The question I had with BeginInvoke is what would happen if I do not call EndInvoke on that delegate? Will it just exit after it has done it's work. What would happen if the delegate i've invoked goes out of scope but the method invoked is not finished? Will the method being invoked keep working until it finishes? Or will it just exit or worse?
|
|
|
|
|
This is something that's usually done by a seperate app, not a component. The application usually launches the update app which goes off on it's own and checks for updates and downloads them. Some communication with the parent app is possible through Remoting. If the user requests that the update be installed now, it tells the updater to do so and quits. The updater continues on and installs the updates, then could optionally relaunch the new version of the parent app.
BeginInvoke returns an IAsyncResult object, that can be ignored without any consequences. You don't have to do anything with it or dispose it. You also don't have to call EndInvoke, unless you want any return values from your method call. The delegate you invoke won't go out of scope until it's done executing. Remember its on its own thread and executing completely independent of the thread that called it. It will keep running until it runs out of code to execute or fails and throws an unhandled exception. The problem with an exception is you won't know it happened on your main thread because exceptions don't cross thread boundries, unless you call EndInvoke. Any exception that was thrown on the background thread will finally be re-thrown on your main thread only upon calling EndInvoke.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Hi, i used to develop an application in Ms access. Because my form is too big, i set the scroll bar for my form. But now I want to design my new project for vb6 but I can't find scroll bar property in my form property sheet. To solve this problem, I create MDI and SDI form (whether my form is too big but MDI has a scroll bar. Does anybody know how to set a scroll bar on SDI form?
APO-CEDC
Save Children Norway-Cambodia Office
|
|
|
|
|
In VB6 you can't.
There are various hacks (nested control containers) but they were always troublesome for me.
Paul Watson wrote:
"At the end of the day it is what you produce that counts, not how many doctorates you have on the wall."
George Carlin wrote:
"Don't sweat the petty things, and don't pet the sweaty things."
Jörgen Sigvardsson wrote:
If the physicists find a universal theory describing the laws of universe, I'm sure the a**hole constant will be an integral part of that theory.
|
|
|
|
|
in vb 6 when i copy a control in designing form and paste it automatically i get array of controls ...
what can i do in vb .net
|
|
|
|
|
As far as I know VB.NET doesn't have the control array. But you can do it by difference method, but I'm not sure too. Does anybody have an idea about that?
APO-CEDC
Save Children Norway-Cambodia Office
|
|
|
|
|
Create all your controls then what ever events you want to use (the click event for example) use the AddHander method to connect the event for each control to a common handler function.
Paul Watson wrote:
"At the end of the day it is what you produce that counts, not how many doctorates you have on the wall."
George Carlin wrote:
"Don't sweat the petty things, and don't pet the sweaty things."
Jörgen Sigvardsson wrote:
If the physicists find a universal theory describing the laws of universe, I'm sure the a**hole constant will be an integral part of that theory.
|
|
|
|
|
|
i need to bind a datagrid to a data reader,
i also want to be able to make use of the datagrids
data editing abilities, is it posible to take changes made to the data grid
and use the datareader to update the database table and or relevant fields??
plz help
thanx
Afzal Hassen
|
|
|
|
|
The DataReader classes are forward-only readers. They really can't make updates to your database. If you want edit capabilities in your datagrid, you'll have to use a DataAdapter instead. SqlDataAdpeter class docs[^]
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Hi there -
i defined the following, serializable class. main focus lies on the attribut img, which is an byte array.
Imports System.Drawing
Imports System.Runtime.Serialization
Imports System.Runtime.Serialization.Formatters
<serializable()> Public Class ScreenShot
Private Declare Function CreateDC Lib "gdi32" Alias "CreateDCA" (ByVal lpDriverName As String, ByVal lpDeviceName As String, ByVal lpOutput As String, ByVal lpInitData As String) As Integer
Private Declare Function CreateCompatibleDC Lib "GDI32" (ByVal hDC As Integer) As Integer
Private Declare Function CreateCompatibleBitmap Lib "GDI32" (ByVal hDC As Integer, ByVal nWidth As Integer, ByVal nHeight As Integer) As Integer
Private Declare Function GetDeviceCaps Lib "gdi32" Alias "GetDeviceCaps" (ByVal hdc As Integer, ByVal nIndex As Integer) As Integer
Private Declare Function SelectObject Lib "GDI32" (ByVal hDC As Integer, ByVal hObject As Integer) As Integer
Private Declare Function BitBlt Lib "GDI32" (ByVal srchDC As Integer, ByVal srcX As Integer, ByVal srcY As Integer, ByVal srcW As Integer, ByVal srcH As Integer, ByVal desthDC As Integer, ByVal destX As Integer, ByVal destY As Integer, ByVal op As Integer) As Integer
Private Declare Function DeleteDC Lib "GDI32" (ByVal hDC As Integer) As Integer
Private Declare Function DeleteObject Lib "GDI32" (ByVal hObj As Integer) As Integer
Const SRCCOPY As Integer = &HCC0020
Private FW, FH As Integer
Public Shared img As Byte()
Public Sub CaptureScreen()
Dim info As SerializationInfo
Dim hSDC, hMDC As Integer
Dim hBMP, hBMPOld As Integer
Dim r As Integer
hSDC = CreateDC("DISPLAY", "", "", "")
hMDC = CreateCompatibleDC(hSDC)
FW = GetDeviceCaps(hSDC, 8)
FH = GetDeviceCaps(hSDC, 10)
hBMP = CreateCompatibleBitmap(hSDC, FW, FH)
hBMPOld = SelectObject(hMDC, hBMP)
r = BitBlt(hMDC, 0, 0, FW, FH, hSDC, 0, 0, 13369376)
hBMP = SelectObject(hMDC, hBMPOld)
r = DeleteDC(hSDC)
r = DeleteDC(hMDC)
Dim oBackground As Bitmap
oBackground = Image.FromHbitmap(New IntPtr(hBMP))
Dim formatter As New System.Runtime.Serialization.Formatters.Binary.BinaryFormatter()
Dim ms As New System.IO.MemoryStream()
formatter.Serialize(ms, oBackground)
img = ms.GetBuffer()
ms.Flush()
End Sub
Public ReadOnly Property _getImage() As Byte()
Get
Return img
End Get
End Property
End Class
now i want to transfer an object of this class by remoting, doing the following:
Dim getScreenShot As New Interfaces.ScreenShot()
Try
getScreenShot.CaptureScreen()
remServer._giveScreenShot(getScreenShot)
Catch e As Exception
MessageBox.Show(e.ToString)
End Try
This calls a function on the server, that looks like this:
Public Sub _giveScreenShot(ByVal screenShot As Interfaces.ScreenShot) Implements IServer._giveScreenShot
Dim _ms As New System.IO.MemoryStream()
_ms.Write(screenShot._getImage, 0, screenShot._getImage.Length)
Dim _bmp As New Bitmap(_ms)
_ms.Close()
Me._schoolMain.Screenshot.Image = CType(_bmp, Image)
End Sub
the problem i have: the _getImage Method of my screenShot-Object returns "Nothing"... so the byte-array seems to get lost while remoting.
but i don't know why - it is serialized ... what did i wrong???
thanks for help.
|
|
|
|
|
I know that controls for WinForm and WebForm
are come from different classes even they shares
similar name such as ListBox.
BTW, anyone can guide me that does it possible to
convert existing WinForm to WebForm application?
Any tools or techniques are welcome.
Thanks in advance.
|
|
|
|
|
Because the way a Web application works is very different from a Windows Form, your best bet is to rewirte your app form scratch. If it was written properly in Windows Forms, you should only have to rewrite the user interface. Any database code should be in seperate classes, that way they can be shared between the two, usually without any modification.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
|
hi i am a newcomer in vb.net i have installed visual studio dot net on my pc .My applications work on my pc but does not work on any other pc on which Dot net frame work in not installed . Is there any way to run my application on the pc on which Visual Studio is not installed
faheem
|
|
|
|
|
As long as the other computers simply have the .NET Framework installed, your programs should work fine.
Happy Programming and may God Bless!
"Your coding practices might be buggy, but your code is always right."
Internet::WWW::CodeProject::bneacetp
N-Tech Productions
http://www.n-tp.com/
|
|
|
|
|
Faheem Ahmad wrote:
My applications work on my pc but does not work on any other pc on which Dot net frame work in not installed
You must install the .NET Framework on each PC that your .NET application is to run on.
Faheem Ahmad wrote:
Is there any way to run my application on the pc on which Visual Studio is not installed
Yes. Install the .NET Framework on each PC that your application is to run on.
Remember. Visual Studio IS NOT the same as the .NET Framework.
"If a man empties his purse into his head, no man can take it away from him, for an investment in knowledge pays the best interest." -- Joseph E. O'Donnell
Not getting the response you want from a question asked in an online forum: How to Ask Questions the Smart Way!
|
|
|
|
|
Please anybody who know and tell me the simple program for insert, edit, cancel and delete using ADO in VB6, I have to learn it from the first, but currently I use the Data Control for insert, edit,cancel and delete. The provider = microsoft.jet.oledb.4.0.
;);P
Best Regards,
Ahmad Rifai Yusuf
|
|
|
|
|
Simple? Anything but... Articles and samples concerning VB6 and ADO are becomming increasingly difficult to find over the last three years. They've been pretty much replaced by VB.NET and ADO.NET. Your best bet is to pick up a book on it. Believe it or not, "Visual Basic 6 Database Programming for Dummies" has turned out to be pretty good on the subject.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
I read on www.visualbasic.net[^] that I could send mail messages by using the objects available in System.Web.Mail, so I tried including the line Imports System.Web.Mail at the top of my code, but there was no System.Web.Mail! So is there any way to send e-mails using a different method in VB .NET?
O_o
|
|
|
|
|
In order to use the System.Web.Mail namespace, you have to add to your project, a reference to the System.Web.dll assembly. Go to your References folder in the Solution Explorer, right-click the References folder, then click Add Reference . On the .NET tab, scroll down the list until you find System.Web.dll and double-click it. The reference should appear in the bottom window of the dialog, then click OK. Now you can add the Imports System.Web.Mail at the top of your code.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Wow! Thanks, that really helped. Now I know how to add a reference too
y helothar noob
|
|
|
|
|