Dear John,
First of all I can reassure you that all our supporters closely work with the developers when replies to each and every question on support. Sure, the developers were looking deep into this forum topic, perhaps there was just a misunderstanding at some point. And I want to apologize if we made you frustrated at some point.
Back to earth, as you say, let's differentiate between the two Properties: MaxOutQueue and OutBufferSize. Here I refer to the information in the User Manual which goes with Serial Port ActiveX Control v3:
"MaxOutQueue
Get maximum size of the driver's internal output buffer, in bytes.
Property Value
Maximum size of the driver's internal output buffer. A value of zero indicates that no maximum value is imposed by the serial provider.
OutBufferSize
Get or set specifies the recommended size of the device's internal output buffer, in bytes
Property Value
The recommended size of the device's internal output buffer, in bytes.
"
Now, we see that those are two different properties. The first one (MaxOutQueue) cannot allow you to set / change the value, becasue the maximum size of buffer size fully depends on the port manufacturer settings. You can only get this value.
OutBufferSize property can be used in two ways: to set the desired buffer size (note that this property doesn't guarantee that Windows will be capable to allocate the resources so that you get the buffer size equal to the value you set). Or you can use OutBufferSize to get the current buffer size. Each IDE has its own instructions on how to use this property in either of the two ways. You can refer to your IDE documentation to clarify this and see our Usage Samples.
Still, setting the Buffer size to a desired value is not the best solution according to our developers. Also note that if the MaxOutQueue returns zero in your case, you won't be able to set an output buffer size more than that value.
Regarding your device not supporting flow control, that might be true and we cannot check or help it from our side. As far as your second remark is concerned, let us disagree with you. FlowControl was initially designed to prevent data loss. It guarantees that all that is sent is delivered, or at least all that is sent before timeout. How it works: when the buffer is full and data cannot get through, you will either get a Write method hang up or the TimeOut (if you set that) will make data transmission stop. Sure, Flowcontrol does not tell you, how many bytes you can call the Write method with.
I hope this clarifies things a bit. Let me also underline that the discussed properties are those suggested by Microsoft, so you can also consult with them to get a deeper understanding of. And feel free to address us again if you have more questions.