The vendor filter string is actually just passed through QuickOPC to the OPC server without change, and it is the OPC server that interprets the filter. Issues with vendor filter semantics are therefore likely to be issues with the OPC server, and not QuickOPC client part.
In this particular case, '#' is actually a reserved character that denotes a (decimal) digit.
You may be able to get around this interpretation by using the notation with '', possibly (but not tested):
Note that this particular filter may be good as an example, but filtering for a well-known, single node generally is kind of useless - if you know the name of the node, you normally do not need to browse its parent for it.
I'm evaluating the QuickOPC components and I tried the "Demo Application (OPC-DA)" sample program.
I tried to filter the branches of the "Boiler" node (In the "Browse for OPCC-DA item") you supplied in the demo server with the expression: Boiler #1
All the nodes inside the "Boilers" node disappeared.
However when I tried using the expression: Boiler *1
I kept seeing the "Boiler #1" node just as I expected.
The same happened when I tried this in my own testing program using this code:
DANodeElementCollection boilers = client.BrowseBranches("myPC", "OPCLabs.KitServer.2", "Boilers", "Boiler #1");
Is there a problem with filtering nodes containing the "#" character? is this a bug or am I doing something wrong?