|
While I appreciate the effort bojammis, It's more about understanding the issue and why the parent code compiles, or better yet, if it can be avoided with some IDE setting.
There are a number of ways to avoid the problem, including using the DesignerMode flag to determine if code should run. Unfortunately it isn't only constructors that run. Load() and other events are triggered at undesired times as well, complicating the code, when the whole purpose of the inherited form should be for the simplification of the code.
Also for clarification, my code does a lot more than build a timer--I simplified my description for this post. There are several independent background tasks which are being launched that now all have to monitor if the IDE is running them, or the designer.
|
|
|
|
|
Sorry about that - I should have read your post more closely.
|
|
|
|
|
goal: Outlook email view, would like a column/field that shows more than just a paperclip when there are attachments, want it to show the names of the files attached. You can easily create a user defined field (UDF) in Outlook, but they do not offer much help for newbies on how to write the VBA to assign it to the value. please help if you can
|
|
|
|
|
Respected Sir/ Madam,
Thanks for your great website. I heard that Windows was created using visual basic; Tally using VBScript. Can you where to learn programming so that I too create a computer language using Visual Basic or VBScipt or other languages?
Thanking you,
yours truly,
N.Kumaresh.
P.S.: Your nation is splendid! Computer invention is splendid!
|
|
|
|
|
I'm not even coming close here on this one.
I copied and translated the code from a c-sharp example, and thought I got it right.
I have the formula right. This can't that hard to do. But I suspect it's my computing of the HMAC
This is my first time doing this, so I have no real experience at it.
[edit] - I wonder if my time is wrong
Formula
The HMAC is calculated with the SHA-1 algorithm on the following:
Request Method + \n
+ Content-type + \n
+ Content Digest (SHA-1) + \n
+ Sending Time + \n
+ Request URL
The sending time is expressed in ISO 8601 format, e.g: 2012-09-21T00:50:09Z.
Code:
'Build and assign values to hashing and header variables
Dim m_method As String = "POST"
Dim m_type As String = "application/xml"
'Dim m_time As String = DateTime.UtcNow.ToString("yyyy-MM-ddTHH:mm:ssZ")
Dim m_time As String = "2015-01-04T20:51:54Z"
Dim m_uri As String = "/transaction/v12"
Dim m_hashData As String = m_method & "\n" & m_type & "\n" & hashed_content & "\n" & m_time & "\n" + m_uri
'Compute the HMAC and convert to a base64 hash
Dim m_hmac_sha1 As New HMACSHA1(Encoding.UTF8.GetBytes(m_key))
Dim m_hmac_data() As Byte = m_hmac_sha1.ComputeHash(Encoding.UTF8.GetBytes(m_hashData))
Dim m_base64_hash As String = Convert.ToBase64String(m_hmac_data)
Values I get
POST\napplication/xml\n748019bad47c6806d6608f5399ca02fc704c2f3b\n2015-01-04T20:51:54Z\n/transaction/v12
748019bad47c6806d6608f5399ca02fc704c2f3b
Ycow9SWOODIur4nVheKDnBc9dN0=
Correct Values
ContentDigest: 594f983e3e1cf31c379c85a2022b6cd50b715a43
HMAC: ANbd9PXgE1mEL0JI2XAYz881sA8=
|
|
|
|
|
Well I back to basics here, and constructed the test code again in the simplist form.
So this is the first translation I made from c# to vb, using asp.net 4.0
So if I don't generate this right first, then the 2nd one will not be correct.
The error I get is invalid signature, and the hashed content does not match.
Works in c#, so I must of made a mistake in the translation.
Perhaps another set of eyes on this could help out.
Set One:
ASCIIEncoding encoder = new ASCIIEncoding();
byte[] xml_byte = encoder.GetBytes(xml_string);
SHA1CryptoServiceProvider sha1_crypto = new SHA1CryptoServiceProvider();
string hash = BitConverter.ToString(sha1_crypto.ComputeHash(xml_byte)).Replace("-", "");
string hashed_content = hash.ToLower();
Dim encoder As ASCIIEncoding = New ASCIIEncoding
Dim xml_bytes() As Byte = encoder.GetBytes(xml_string)
Dim sha1_crypto As SHA1CryptoServiceProvider = New SHA1CryptoServiceProvider
Dim hash As String = BitConverter.ToString(sha1_crypto.ComputeHash(xml_bytes)).Replace("-", "")
Dim hashed_content As String = hash.ToLower
Set Two:
HMAC hmac_sha1 = new HMACSHA1(Encoding.UTF8.GetBytes(key));
byte[] hmac_data = hmac_sha1.ComputeHash(Encoding.UTF8.GetBytes(hash_data));
string base64_hash = Convert.ToBase64String(hmac_data);
'Compute the HMAC and convert to a base64 hash
Dim m_hmac_sha1 As New HMACSHA1(Encoding.UTF8.GetBytes(m_key))
Dim m_hmac_data() As Byte = m_hmac_sha1.ComputeHash(Encoding.UTF8.GetBytes(m_hashData))
Dim m_base64_hash As String = Convert.ToBase64String(m_hmac_data)
|
|
|
|
|
Well I just got a lesson in hash data, or more like the use of \n in c-sharp
That doesn't work in vb, you have to use vblf instead. So the HMAC never computed correctly.
And how stupid of me not to run both sets of code side by side, and check every value to see if they match.
First Translation
'Build and assign values to hashing and header variables
Dim m_method As String = "POST"
Dim m_type As String = "application/xml"
Dim m_time As String = DateTime.UtcNow.ToString("yyyy-MM-ddTHH:mm:ssZ")
Dim m_hashData As String = m_method & "\n" & m_type & "\n" & hashed_content & "\n" & m_time & "\n" + m_transmit_Uri
Modified:
'Build and assign values to hashing and header variables
Dim m_method As String = "POST"
Dim m_type As String = "application/xml"
Dim m_time As String = DateTime.UtcNow.ToString("yyyy-MM-ddTHH:mm:ssZ")
Dim m_hashData As String = m_method & vbLf & m_type & vbLf & hashed_content & vbLf & m_time & vbLf & m_transmit_Uri
|
|
|
|
|
THANK YOU so much! The vbNewLine was throwing me off. used the vbLf and boom! it worked.
|
|
|
|
|
Who knew 5 years later someone would need help with this. I'm surprised you found this post.
If it ain't broke don't fix it
Discover my world at jkirkerx.com
|
|
|
|
|
please help me.how to make a simple youtube downloader in vb.net
|
|
|
|
|
|
YouTube Downloader Using C# .NET[^]
I know it is in C# but it won't be hard to convert to VB.NET
Every day, thousands of innocent plants are killed by vegetarians.
Help end the violence EAT BACON
|
|
|
|
|
Hi everyone,
I am using Visual Studio 2013 Community Edition. I am compiling with .NET 4.0
I need a control which will allow me to present the user with a text string while having the ability to have a transparent backColor. I think back in the days of VB 6.0 you were able to set a label with a Transparent backColor.
Example: There is a TextBox sitting in front of a PictureBox. The user can change the image displayed in the PictureBox. If the user changes the image to a gradient, I need the user to be able to see the image which is behind the textBox container.
I really do not mind what control I use as long as I can have it display text.
Any help at all would be greatly appreciated.
Thanks in advance!!
|
|
|
|
|
Please don't double-post.
|
|
|
|
|
WinForms has no transparent label, AFAIK. You'd draw the text in a Paint-event. That would also make it non-editable.
It's easier to show a non-transparent textbox, like when the user doubleclicks the image.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
hi
i want cod program Excellence characters English usenig (Visual Basic) arrays neural network ann competitive supervised
Please
|
|
|
|
|
Word salad. Your string of words made no sense at all.
And if you're looking for someone to just write code for you, you've come to the wrong site.
|
|
|
|
|
i want to extract sample from fingerprint template
the template is from database
i want to display the extracted sample to crystal report
i am stuck at this code:
Dim bitmap As Bitmap = Nothing
Dim ex As DPFP.Processing.FeatureExtraction
Dim convertor As New DPFP.Capture.SampleConversion
Dim fbyte As Byte() = set2.Tables(0).DefaultView.Item(0).Item(1)
Dim stream As IO.MemoryStream = New IO.MemoryStream(fbyte)
a.DeSerialize(stream)
|
|
|
|
|
Member 11180306 wrote: i am stuck at this code: You'd need to check the documentation of the library your using to read the fingerprint.
You'd also probably want to assign the result from the deserialization to some object.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
hi,
I've a database in ms access 2010. there is a table named Expenses and its fields are ID (text field), Vendor, ExpenseDate, InvoiceNo, Amount, PaymentType, AmountPaid, Credit.
I want to filter data from Expense table according to gigen ID and between the two ExpenseDate.
I used subform control and want to display filtered records in subform.
currently I used this code to filter on subform -
With Me.subExpenses.Form
.Filter = "[ExpenseDate] BETWEEN #" & Me.txtSDate & "# AND #" & Me.txtEDate & "#"
.FilterOn = True
.FilterOnLoad = True
End With
also I used another code to query the records -
Me.subOrders.Form.RecordSource = "SELECT * FROM Orders WHERE ID='" & IdNo & "' AND OrderDate BETWEEN #" & SDate & "# AND #" & EDate & "# ORDER BY OrderDate"
but both codes are not working.
please give me solution as soon as possible because its argent.
Thanks,
|
|
|
|
|
It is never urgent if you ask a volunteer.
Does VBA only allow for queries built with string-contatenation? Also, what datatype does IdNo have? Is it a text? Are you sure that you have the correct date-format for your local culture? Does it return records if you remove the "between" part?
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
I have this credit card API. You can write your own XML or use their WSDL file, register it as a Web Service. I starting to prefer the first method.
So on the XML, your suppose to generate a request header, then send the XML. Which makes sense to me.
On the WSDL, I have no clue how to do the same thing, of even come up with the search keywords to do research.
I guess my question is what would this be called, keyword suggestions.
Perhaps your thought on the task at hand here. Maybe go recode to XML using my XSD Class, and then use the bottom code.
For some reason, I'm including some code here, the give my question more clarity.
'Make a tranaction
Dim txn As New com.firstdata.globalgatewaye4.V14.Transaction
'Credentials
txn.ExactID = sCA.Exact_ID
txn.Password = sCA.Exact_Password
'//////////////////////////////////////////////////////////////////////////////////////
'Transmit the Card Authorization Request
Dim ws As com.firstdata.globalgatewaye4.V14.Service = New com.firstdata.globalgatewaye4.V14.Service
Dim rxn As com.firstdata.globalgatewaye4.V14.TransactionResult = New com.firstdata.globalgatewaye4.V14.TransactionResult
rxn = ws.SendAndCommit(txn)
'//////////////////////////////////////////////////////////////////////////////////////
I started working on this, thinking I could just pass the XML generated from the WSDL to the transmitter, but I'm on the wrong track here.
Private Function transmit_HMAC( _
ByVal pValue As String) As Integer
Dim dwExitCode As Integer = 2
'Generate the Hashed Content
Dim encoder As ASCIIEncoding = New ASCIIEncoding
Dim wsdl_bytes() As Byte = encoder.GetBytes(pValue)
Dim sha1_crypto As SHA1CryptoServiceProvider = New SHA1CryptoServiceProvider
Dim hash As String = BitConverter.ToString(sha1_crypto.ComputeHash(wsdl_bytes)).Replace("-", "")
Dim hashed_content As String = hash.ToLower
'Grab a copy of the keys
Dim m_keyID As String = My.Resources.HMAC_KEY_ID
Dim m_key As String = My.Resources.HMAC_KEY
'Grab a copy of the EndPoint
Dim m_url As String = My.Resources.endPoint_Demo
'Build and assign values to hashing and header variables
Dim m_method As String = "POST\n"
Dim m_type As String = "application/xml" 'REST XML
Dim m_time As String = DateTime.UtcNow.ToString("yyyy-MM-ddTHH:mm:ssZ")
Dim m_uri As String = "/transaction/v14"
Dim m_hashData As String = m_method & m_type & "\n" & hashed_content & "\n" & m_time & "\n" + m_uri
Dim m_hmac_sha1 As New HMACSHA1(Encoding.UTF8.GetBytes(m_key))
Dim m_hmac_data() As Byte = m_hmac_sha1.ComputeHash(Encoding.UTF8.GetBytes(m_hashData))
Dim m_base64_hash As String = Convert.ToBase64String(m_hmac_data)
'Build the HTTP Request
Dim request As HttpWebRequest = HttpWebRequest.Create(m_url)
request.Method = "POST"
request.ContentType = m_type
request.Accept = "*/*"
request.Headers.Add("x-gge4-date", m_time)
request.Headers.Add("x-gge4-content-sha1", hashed_content)
request.Headers.Add("Authorization", "GGE4_API " + m_keyID + ":" + m_base64_hash)
request.ContentLength = pValue.Length
Using stream_writer As StreamWriter = New StreamWriter(request.GetRequestStream)
stream_writer.Write(pValue)
End Using
Return dwExitCode
End Function
|
|
|
|
|
I'm trying to use a progress bar in a .Net 4.5 application while calling a method that doesn't return for 5-7 seconds. This is a simple application, but the examples I've seen are either based on file operations or web operations. Since mine is neither I'm unclear as to:
1) What type of async method to use?
2) For the await method what type of .NET method do I use (e.g., .DownloadStringTaskAsync)?
I'm trying to use Furytrader post 'Simple .Net progress bar using async/await', 2/18/2014, but I'm struggling. Example code is a lot to ask for but mod's to Furytrader's post might be easier.
|
|
|
|
|
With a bit more investigation, it was apparent that the time consuming task in this example, retrieving a string from a website, was effectively driving the frequency that the progress bar was updated -- retrieve a string then update the progress bar. My problem is that the task I'm calling does not return for several seconds and it is during this time that I want to be updating the progress bar since the task is a blocking task.
How do I call such a task and also be updating the progress bar?
|
|
|
|
|
Howdy - you might try using a Background worker for this task. The Background worker class provides a straight forward method to update progress bars etc.
|
|
|
|