|
" or you can simplify the code and just ask the user which they are going to use and go with normal SerialPort or File based code."
Exactly this was my point. Thank you
|
|
|
|
|
It means I will have to duplicate code right? There are various kind of read write and query methods means I will have to write each separately for File and Serial Port classes, so be it, this is not big issue I guess?
|
|
|
|
|
user20044 wrote: There is no SDK They did when I had to interface with the HASP dongle. You'd first have to find out what you want exactly; write to a serial port, a USB or FileSystem. The C++ code is simply writing to a serial port.
You can do the same from C#, but may be easier to translate to managed C++[^]. Using those methods from C# is also possible, as shown here[^].
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Well this code should be writing to both USB and file system, because if there is no physical HASP, there is also virtual HASP - which is just file - and that WriteFile can write both to USB(HASP) and file system, isn't it?
In C# code, can't I encapsulate such that if user chooses physical hasp, I use SerialPort class, and if not regular File methods? What do you think?
|
|
|
|
|
user20044 wrote: and that WriteFile can write both to USB(HASP) and file system, isn't it? It can write to different ports as documented.
user20044 wrote: In C# code, can't I encapsulate such that if user chooses physical hasp, I use
SerialPort class, and if not regular File methods? What do you think? If you are trying to convert then go for the File methods. Not the regular ones, the API call that C++ executes.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
As noted above with Dave Kreskowiak I think best is to use File methods if user chose virtual hasp and use Serial.Port if this is physical HASP
|
|
|
|
|
This class Serial Communication in Windows[^] you linked is using exact same approach as code I posted isn't it?
It seems those methods can write both to serial(what I need) and file system.
So, I need C# equivalent.
Can't I do it with Serial.Port class when I need HASP access, and ordinary File methods when I need file system access? I understand I may need to duplicate code, but I think this is easiest for me. What do you think? Thanks.
|
|
|
|
|
I don't think a file is a replacement for the dongle.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
What do you mean? Like I said there are two options:
1. There is physical USB - HASP
2. Virtual HASP- which is just a file
So in 1st case I will use SerialPort, in the second, File methods.
Isn't it?
|
|
|
|
|
Dear Expert,
What are the principles of Internet download manager?
How is it work?
I am thinking to develop program like it, what is the suitable language?
Regards,
|
|
|
|
|
I've been a registered owner of IDM for (I think) over ten years, and it works very, very well. It is also a program that is updated almost every six-weeks because of the very complex business it does of integrating into all the popular browsers. What's even more remarkable: they've never asked me to pay for an update !
On the simplest level IDM is a manager for file-downloads, but that's like saying C# is a simple tool for making applications
It has too many other facilities and features to go into, here.
Unless you are seasoned developer with years of experience in dealing with Windows and in interaction with browsers, and a few years of your time to spend on this project, I suggest you think of another project to do.
«I want to stay as close to the edge as I can without going over. Out on the edge you see all kinds of things you can't see from the center» Kurt Vonnegut.
|
|
|
|
|
|
What does the name suggests? Internet download manager. It simply manages the processes for file downloads or other downloads that you are trying to get.
As Bill has mentioned above, the job is not just to download the file from web resource, but also to ensure that the plugin is well integrated to all of the browsers. That is the actual tasks that they have to take care of. Downloading the resource is simply an HTTP client asking for a file download. But how does it know that a user wants to download something? That is the actual job of theirs.
For example, downloading a video from YouTube, Dailymotion or like downloading an audio file when it is played from the browser (all kinds of browsers). That is the complex task that IDM does for you. Anyone can download a file, just Right-clicking on that resource and selecting "Save as...". IDM does more than that! That is what makes it "The" Internet Download Manager.
The sh*t I complain about
It's like there ain't a cloud in the sky and it's raining out - Eminem
~! Firewall !~
|
|
|
|
|
Dear Sir/Madam
i want to compare two different datagridview with same column name with different row count.
i want to compare both and fine row count (how much row not exist in second datagridview) and row which is not ixist in second datagridview into array or its display on third seprate datagridview.
please help me to find solution as soon as possible.
|
|
|
|
|
What have you tried so far?
Where are you stuck?
What help do you need?
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
How are the datagrids populated? I am assuming they are built with a List<object>? Also if the object in the list has a field name, then foreach on both lists and compare a field like name.
foreach (CustomObject a in list1)
{
if (!list2.Contains(a))
{
notIncludedList.Add(a);
}
}
int num = notIncludedList.count;
Like Griff pointed out, we really don't have a lot to go on, so can you be more specific with what code you have that is not working, or give us a small snipet so that we can see what you are working with and help to resolve it?
|
|
|
|
|
My suggestion is to compare the (records of the) "data sources" instead of trying to compare "grids".
|
|
|
|
|
Hello,
I am new to C# programming, I am doing Mini project on Apriori Algorithm using C# and I don't know from where I should start. Any one who willing to give me a guide to implement it and sample source code. I appreciate your help .
Thanks.
|
|
|
|
|
|
For me, debugging challenges are both the best and the worst experiences in programming; this one is a challenge I can "relish," since there's no deadline, no paycheck-on-the-line
I have a complex class that I serialize and de-serialize using WCF [DataContract] and [DataMember] Attributes without errors, or warning. In the test I've constructed to validate de-serialization are some Linq queries that when run against the de-serialized class instance come up with unexpected null results.
It appears I have Linq queries which give different results given identical inputs from which I assume, of course, that the problem is something subtle.
Here's an example of a query where the unexpected behavior (null result) is observed:
public IEnumerable<Relationship> GetRelationships(string n1, string n2)
{
Node fromNode = NameToNode[n1];
Node toNode = NameToNode[n2];
return
Relationships.Where(r => r.EndNode == fromNode && r.StartNode == toNode)
.Concat
(
Relationships.Where(r => r.StartNode == fromNode && r.EndNode == toNode)
);
}
var rels = testGraph.GetRelationships("gina", "harry"); What is puzzling is that some Linq queries work fine, like this one:
var wholikesjim = testGraph.Relationships.Where
(rel => rel.Name == "Likes").Where(rel => rel.EndNode.Name == "jim"
); So far, I've done this:
0. (the obvious) inspected the serialized xml for "weirdness."
1. created a method to write all the various objects and their values to a TextBox, then compared the run-time report of the "native" version of the class instance to the de-serialized instance. The outputs are identical.
2. drilled down at run-time into the class instance using the debugger at the places where unexpected behavior occurs and noted the existing values/state of the various sub-objects when Linq queries are performed, then compared those before and after serialization/de-serialization.
The other queries which are not performing all use 'Join.
I'm stumped; I'll appreciate your ideas.
«I want to stay as close to the edge as I can without going over. Out on the edge you see all kinds of things you can't see from the center» Kurt Vonnegut.
|
|
|
|
|
In the queries that work, you are comparing "strings" (values).
In the ones that don't work, you appear to be comparing "object references" (unless there is an overloaded operator at work somewhere).
|
|
|
|
|
Valuable insight, Gerry,
Last night I had written an overloaded == operator for the Node Class, and that fixed one query, and just this morning (GMT +07 here), I rewrote (using foreach so I could inspect the internal state) one of the Linq queries that still doesn't compare Node instances consistently after the class is de-serialized.
As you suggest, I found the expected equality comparisons were not as expected.
The conclusion I reach is that after de-serialization what should be two references to the same Class instance are, in fact, references to two distinct Class instances that have identical properties.
So, today I will try and discover how that came to be.
thanks, Bill
«I want to stay as close to the edge as I can without going over. Out on the edge you see all kinds of things you can't see from the center» Kurt Vonnegut.
|
|
|
|
|
Yes; curious ... one usually needs to take deliberate steps in order to clone another object; particularly if a deep clone is required.
(Except when there's a systemic anomaly in the matrix).
|
|
|
|
|
I'm kind of curious here. When are you interested in calling a clone to get a shallow copy? Id just create a pointer instead then, wouldn't you?
In making a deep copy always end up doing this:
Class MyClasss
Implements ICloneable
Private pName As String
Public Property Name() As String
Get
Return pName
End Get
Set(ByVal value As String)
pName = value
End Set
End Property
Private pNAmes As New List(Of String)
Public Property Names() As List(Of String)
Get
Return pNAmes
End Get
Set(ByVal value As List(Of String))
pNAmes = value
End Set
End Property
Public Function Clone() As Object Implements ICloneable.Clone
Dim result As New MyClasss
result = Me.MemberwiseClone
' If I have any properties of collection type
' I need to create a copy of each list
Dim TempNames As New List(Of String)
For Each str As String In Names
TempNames.Add(str)
Next
result.Names = TempNames
Return result
End Function
End Class
But I would sure like to know why the MemberwiseClone can't clone lists or collections like this. I also bet there is a more generic way of implementing it though.
|
|
|
|
|
I think you'd benefit by posting this as a separate question.
cheers, Bill
«I want to stay as close to the edge as I can without going over. Out on the edge you see all kinds of things you can't see from the center» Kurt Vonnegut.
|
|
|
|