|
If you are creating a new project and not maintaining an old project then i suggest you move on from VB6 to VB.net.
Have you stepped through the code in the debugger?
Sounds like AdoAudit or AdoRec isn't actualy set to any object.
After these object are declared there is usually a Set xyz = somewhere later on.
Try debug, and also look to make sure your objects are referencing correctly.
I also note your tim = now statement, Should this not be;
Dim tim as Date
tim = now()
|
|
|
|
|
Ace Anthony C. Austria wrote: However, whenever I run the program, it stops when I click cmdSave and Run-Time Error 91 "Object variable or With block variable not set". The highlighted syntax would be the five aforementioned lines involving AdoAudit. The save command for AdoRec, on the other hand, functions properly.
Is the AdoAudit object opened properly? If you're "just" adding records, then you could consider using a ADODB.Command with an INSERT -statement.I are Troll
|
|
|
|
|
That particular error usually means that one of the object that you are referencing does not have an instance. I suggest placing a break point on the first line that your code has trouble. Then use the immediate pane to check that each of your objects has an instance such as "?AdoAudit is nothing", and then "?AdoAudit.Recordset is nothing", etc. It'll return true/false for each object that you do this with.
Here is a an example that accomplishes what you are looking to do in your cmdSave_Click event. Note: be sure to replace the Const values. Hopefully, this working model (I tested it on my computer) will help you identify where your code went off.
Private Sub cmdSave_Click()
'enter values for your scenario
Const connStr As String = "<replace with the connection string to connect to your Access DB>"
Const tableName As String = "<replace with the table name of the table you wish to save to>"
'vars
Dim dbConn As ADODB.Connection
Dim saveRec As ADODB.Recordset
'initialize & open connection to DB
Set dbConn = New ADODB.Connection
dbConn.Open connStr
'initialize & open recordset to table
Set saveRec = New ADODB.Recordset
saveRec.Open "SELECT TOP 0 * FROM [" & tableName & "]", dbConn, adOpenDynamic, adLockOptimistic
'create new record
saveRec.AddNew
'save data to new record
saveRec("Operation") = "Added or Altered Reference Material"
saveRec("DateDone") = Format(Now, "mm-dd-yyyy")
saveRec("TimeDone") = Format(Now, "hh:mm:ss ampm")
'save record
saveRec.Update
'clean up
saveRec.Close
Set saveRec = Nothing
dbConn.Close
Set dbConn = Nothing
End Sub
|
|
|
|
|
Hi,
I am using Visual Basic 6.0. In My Application I had an treeview (listing file names) and an Webbrowser control. So that While choosing the filenames from the treeview it will be opened on the webbrowser. My Problem is that in Folder options-> File Types->Doc->Advanced->Browse in the same window is unchecked. So it opens Out side the web browser.
How to get this Settings.
so that if it is unchecked i can provide information to the User
Thanks
|
|
|
|
|
Those setting are buried in the registry.
You will need to write code that searches through the relevant hive and path to extract the setting for the relevant filetype.
(again, time to move on from VB6.....)
|
|
|
|
|
Please help me with my project hotel reservation system in visual basic programming language. Please, i really need the code coz i'm just a beginner in programming.., i really don't know how to program it.,
Thanks.., God Bless.,
|
|
|
|
|
Why would you accept a project if you know you can't do it, and what makes you think that some one else would do the work for you? My advice is free, and you may get what you paid for.
|
|
|
|
|
chazy_chaz640 wrote: Please help me with my project hotel reservation system in visual basic programming language. Please, i really need the code coz i'm just a beginner in programming.
May I suggest you start with 1) a book and 2) a simpler project. If you need someone else to write your project for you then please advertise in the Jobs forum.MVP 2010 - are they mad?
|
|
|
|
|
You just failed your class buddy, and rightfully so.
|
|
|
|
|
This assignment is too difficult for a beginner. I think the professor is crazy.
From the profile I see that this is probably from an American university. American universities have a reputation of having good quality. Maybe the professor wanted to keep the quality high and pushed the students too hard.
In our place we all take it easy. That's probably why we are not as advanced as the rest of the world.modified on Saturday, February 6, 2010 4:01 PM
|
|
|
|
|
Background:
I have a Visual Studio 2008 VB Windows application. The main window form can contain several MDI children. Each MDI child contains a progress bar to show the progress of actions which can take several minutes (the loading and parsing of large data files).
Question:
How I can have all of the progress bars from all of the MDI children continue to update even though only one of the MDI children is the active one?
Problem Description:
Say I start an action from within one MDI child (the loading and parsing a large file). The progress bar begins to slowly advance.
Say I then start an action from a different MDI child. The progress bar in that MDI child begins to slowly advance but the progress bar from the first MDI child no longer increments.
However, the action that I started from the first MDI child (the loading and parsing) does continue to run.
If I leave the second MDI child form and click on the first MDI child form, the progress bar of the first MDI child immediately jumps to where it should be but then the second MDI child's progress bar stops advancing (although the second MDI child's action continues to be performed).
Thank you for whatever suggestion you might have.
Jim
|
|
|
|
|
Can you show relevant code?
From what you describe, I would add a myProgressBar.Refresh() whenever myProgressBar.Value gets changed.
Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles]
I only read code that is properly formatted, adding PRE tags is the easiest way to obtain that. [The QA section does it automatically now, I hope we soon get it on regular forums as well]
|
|
|
|
|
Have you tried using Application.DoEvents in your loops. Maybe not the best way to go, but it should ensure that forms get updated.
|
|
|
|
|
At a glance can anyone tell me why this might fire twice and move ahead two records some times, but not all the time?
Protected Overrides Function ProcessKeyPreview(ByRef m As System.Windows.Forms.Message) As Boolean
Select Case m.WParam.ToInt32()
Case 37
Me.DtRecordInfoBindingSource.MovePrevious()
Return True
Case 39
Me.DtRecordInfoBindingSource.MoveNext()
Return True
End Select
Return False
End Function
Any help would be appreciated.
|
|
|
|
|
Hi,
my guess is:
- your list Control (DataGridView or whatever) will process up/down keys if it has focus;
- your Form will preview and handle the same keys also.
Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles]
I only read code that is properly formatted, adding PRE tags is the easiest way to obtain that. [The QA section does it automatically now, I hope we soon get it on regular forums as well]
|
|
|
|
|
Hello everyone,
I would like some opinions on good coding practices.
Below are 3 methods of writing a procedure.
Currently I am coding like method 3.
Any comments, please ?
Criteria: The function must return null if any errors occured.
'Method 1
'If byteIn is null the function will return nothing.
'This function uses two (2) returns.
'I read that using the return statements is perfered (I don't know why).
'The catch will fire if byteIn is nothing.
Public Function ByteArrayToStream(ByRef byteIn() As Byte) As System.IO.MemoryStream
Try
Return New System.IO.MemoryStream(byteIn, True)
Catch ex As Exception
Return Nothing
End Try
End Function
'Method 2
'If byteIn is null the function will return nothing.
'This function is assigning the result to the name of the procedure.
'The catch will fire if byteIn is nothing.
Public Function ByteArrayToStream(ByRef byteIn() As Byte) As System.IO.MemoryStream
Try
ByteArrayToStream = New System.IO.MemoryStream(byteIn, True)
Catch ex As Exception
ByteArrayToStream = Nothing
End Try
End Function
'Method 3
'If byteIn is null the function will return nothing.
'This function is checking for null so the catch does not have to fire.
'I read somewhere that it is better to pre-check for possible error conditions.
'This function uses only 1 return statement, better?
'I believe there is extra memory overhead (ms2) with this method.
Public Function ByteArrayToStream(ByRef byteIn() As Byte) As System.IO.MemoryStream
Dim ms2 As IO.MemoryStream = Nothing
Try
If byteIn Is Nothing Then Exit Try
ms2 = New System.IO.MemoryStream(byteIn, True)
Catch ex As Exception
ms2 = Nothing
End Try
Return ms2
End Function
|
|
|
|
|
Why not use Option #4 and wrap the Try\Catch in an If\Then\Else that checks the input parameter for a value and if it is nothing just returns?
modified on Friday, February 5, 2010 4:15 PM
|
|
|
|
|
I'd also avoid method 2, or atleast avoid returning a value by using MyFunction = value and always use Return value . It's more readable and also much easier if you decide to change the function name while coding.
Best Regards,
MicroVirus
|
|
|
|
|
I would use
Public Function ByteArrayToStream(ByRef byteIn() as byte) as System.IO.MemoryStream
Dim returnValue as System.IO.MemoryStream = Nothing
If byteIn IsNot Nothing then
returnValue = New System.IO.MemoryStream(byteIn, True)
end if
return returnValue
End Function
|
|
|
|
|
Method 2 is definitely not preferred. Return is standard for C anything and it's very nice that VB.Net now lets you return instead of setting the function name to the value or object.
With Try /Catch segments, I always just put the one line that could cause an exception. I would go with:
Public Function ByteArrayToStream(ByRef byteIn() as Byte) as System.IO.MemoryStram
If byteIn Is Nothing Then Return Nothing
Try
Return New System.IO.MemoryStream(byteIn, True)
Catch ex as Exception
Return Nothing
End Try
End Function
You want to avoid using extra memory. Option 3 uses extra memory by creating a new variable. Granted, it's really only a placeholder...a single address in memory pointing to the actual object, but it's still something. Personally, I think #1 is fine. I would assume that the IO.MemoryStream function first checks to see if there was anything actually passed in, so you could probably get rid of the If byteIn Is Nothing section.
|
|
|
|
|
I've developed a PPC app and I'm currently writing the documentation for it. I wanted to add screen shot to the documentation to make it easier for the user. I tried running the program from the IDE using the emulator and using the Alt-Print Screen keyboard command and it won't take a screen shot of the emulator window or anything while the emulator is the active window. Has anyone else tried this? Is there a way to do it while the app is running on the PPC? Any help would be greatly appreciated.
|
|
|
|
|
Have you tried to take away focus from that window so that it isn't active any more and then doing a screenshot of the complete screen? Then just crop your window.
What about software for capturing the screen? Did you try any? As far as I know, IrfanView (it's free) does that (but only for non-commercial use), else google for other free screenshot applications."I love deadlines. I like the whooshing sound they make as they fly by." (DNA)
|
|
|
|
|
I was hoping it was just a setting or something else so that I could easily capture just the emulator window to save time. Oh well...I'll check out that program though, thank you.
|
|
|
|
|
Hi all.
I want to know that how to hide source code of my program so that it can not be seen by some softwares like- reflector or others.
Is it possible to write my own cryptographic algorithm to hide source code? If yes then suggest me what and how should I do.
Thanks.
Gagan
|
|
|
|
|
So, you are looking for an obfuscator.
Gagan.20 wrote: Is it possible to write my own cryptographic algorithm to hide source code?
Yes it is possible but it is not a trivial task. There are some open source projects like NCloak[^] where you can see the code.
And here[^] you can find an obfuscator list. Some of them are free others not.
And remember if your code is so important that you feel the need to obfuscate it, then don't try to create your own obfuscator, just use the existing ones.
|
|
|
|