|
Jaime,
One of the hard challenges of this project is to get this idea into the heads of developers, to make them understand that this is not just a COM project, it's a little more than that. For example, both of your notes are not valid:
1. You do not need to register this library in order to use it. I invented and implemented Stealth Deployment technique that i briefly mentioned in the article and described well in ProSysLib SDK.
2. C++ programmers won't need a single wrapper to use this library at full strength, because the namespaces get mapped onto the smart pointers automatically. See one C++ example that i showed there in the messages.
Like i said, the challenge is to convey this idea of simplicity beyond your regular COM stuff.
Professional System Library on www.prosyslib.com, making it simple for software developers.
|
|
|
|
|
Besides the fact that your arguments can be valid, you cannot change this premise: .net developers don't like COM objects, no matters which technologies or tricks you are using, wrapping is necessary for .net project, that's why I initially suggested to expose your library like the System.IO.Directory class or maybe to Registry class (both are tree collections).
Countersense, phrases like "full managed library" are attractive. So, you can wrap your C++ library into a .net assembly alternatively. Still you can use your COM wrapper for other kind of users (c++, vb6, delphi).
From a commercial perspective (no matters if you have profit or not), this reduces your market segment. Consider I am an experienced C++ and C# developers, so you are hearing an opinion from both sides.
Best regards,
Jaime.
|
|
|
|
|
".net developers don't like COM objects" - this is what i am trying to change. And from what i hear, i need to publish another article to explain all .NET developers that using COM from .NET can be just as elegant as .NET assemblies, no unmanaged code, no COM registration.
I will write an article here about it soon.
Professional System Library on www.prosyslib.com, making it simple for software developers.
|
|
|
|
|
Vitaly Tomilov wrote: this is what i am trying to change
Hehe, you won't change it. COM is coming to be a deprecated technology. Trying to stick to it is like trying to keep VB6 alive, or that DCOM is a better choice than .net Remoting. You cannot convince a .net developer to replace the .net assembly architecture with COM architecture.
Vitaly Tomilov wrote: i need to publish another article to explain all .NET developers that using COM from .NET can be just as elegant as .NET assemblies, no unmanaged code, no COM registration
Better you put a new thread in the CP forum to discuss this. I think you will have a low rated article trying to defend your point of view. But, it is our choice.
Best regards,
Jaime.
|
|
|
|
|
sorry, I meant "it is your choice" (I need to clean my laptop keyboard)
Best regards,
Jaime.
|
|
|
|
|
Hi Jaime,
Believe it or not, but I have been hearing convincing speeches about short-coming death of COM since 1998. As of today, Vista is still by 99% sitting on what's built on top of the COM layer
I took my chances with publishing here, and the results you can see for yourself:
First Article: http://www.codeproject.com/KB/COM/prosyslib2.aspx
Second Article: http://www.codeproject.com/KB/COM/prosyslib3.aspx
Second article as of this moment is the Editor's Choice on CodeProject, sitting on the main page, i'm getting some very good feedback on this.
I would say that i will be the first one to dance when COM really dies, but then ops, i might be just too old for dancing when this happens
Regards,
Vitaly
|
|
|
|
|
The .net framework provides a queue(of T) which is fine for single-threaded programs, but is not thread-safe. There's a synchronized version, but since it uses locking it runs the risk of priority inversion and other such problems.
I've implemented a fairly simple queueing implementation in VB.net with the following properties:
-1- There are no locks or waits, except that the calling program may elect to wait for data if the queue is empty.
-2- There are a few spinlock loops, but there is no possibility of livelock since each loop will only spin if another thread successfully performed useful work while the loop was executing.
-3- Conceptually, the base queue object does not hold data, but is a place to attach reader objects. Data which is written to a queue will be queued in all reader objects.
As an example situation where this class could be used, think of a multi-line chat BBS. There's a central message queue for all broadcast messages; when a new user logs in, a queue reader is created for that user, attached to the central queue. Whenever a message needs to be broadcast (either a user typed something, or the system wants to report something) it is placed in the queue, where it can be read by all attached readers. Data can be added and removed by any number of different threads without need for synchronization.
I've never written an article for CP before (and haven't done a whole lot with VB), but I think the class seems like it should be useful; I would appreciate feedback and advice (e.g. should I allow the user to receive a WaitHandle from a queue reader, so as to allow the use of WaitAny? If so, can I prevent the user from doing anything with it other than wait?) Would anyone be interested if I were to write up such a thing?
|
|
|
|
|
If you think the class is useful, chances are someone else will too. If nothing else, writing the article will be good experience.
Scott Dorman Microsoft® MVP - Visual C# | MCPD
President - Tampa Bay IASA
[ Blog][ Articles][ Forum Guidelines] Hey, hey, hey. Don't be mean. We don't have to be mean because, remember, no matter where you go, there you are. - Buckaroo Banzai
|
|
|
|
|
Any Sharepoint experts out there who can give some examples of using this WebControl? Googling this topic (and SPMenuField) seems to almost exclusively point back to this[^] - which is fine - except that I'd like a deeper understanding of what is happening 'under the hood'. MSDN docs are virtually non-existent...
An article would be lovely!
|
|
|
|
|
It is hard to read some useful here because there are lots of off-topic posts.
Could you delete all them to make this forum more readable?
Best regards,
Jaime.
|
|
|
|
|
Jaime Olivares wrote: It is hard to read some useful here because there are lots of off-topic posts.
Including this one.
Jaime Olivares wrote: Could you delete all them to make this forum more readable?
Seriously, while I agree that there are a lot of off-topic posts I think a better way to manage them is needed instead of deleting them.
Scott Dorman Microsoft® MVP - Visual C# | MCPD
President - Tampa Bay IASA
Hey, hey, hey. Don't be mean. We don't have to be mean because, remember, no matter where you go, there you are. - Buckaroo Banzai
[ Forum Guidelines][ Articles][ Blog]
|
|
|
|
|
Of course you have to delete this too
A move-to-other-forum option would be a better feature, I have seen this feature in some other forums like Experts-Exchange. Moderators use to move the question because some members don't post to the proper area.
Best regards,
Jaime.
|
|
|
|
|
Jaime Olivares wrote: Of course you have to delete this too
Yep, and now your post and my response.
Jaime Olivares wrote: A move-to-other-forum option would be a better feature, I have seen this feature in some other forums like Experts-Exchange. Moderators use to move the question because some members don't post to the proper area.
I actually suggested [^] that, along with a few other features, right after my original response.
Scott Dorman Microsoft® MVP - Visual C# | MCPD
President - Tampa Bay IASA
Hey, hey, hey. Don't be mean. We don't have to be mean because, remember, no matter where you go, there you are. - Buckaroo Banzai
[ Forum Guidelines][ Articles][ Blog]
|
|
|
|
|
There is a warning in some Forum Pages: "DO NOT POST PROGRAMMING QUESTIONS HERE", but not in this one.
DISCLAIMER: You should delete this post after reading because it is off-topic
Best regards,
Jaime.
|
|
|
|
|
Jaime Olivares wrote: There is a warning in some Forum Pages: "DO NOT POST PROGRAMMING QUESTIONS HERE", but not in this one.
Yes, but despite the warning, it still happens.
Jaime Olivares wrote: DISCLAIMER: You should delete this post after reading because it is off-topic
True, but it would have been better to say that this message will self-destruct in 5 seconds.
Scott Dorman Microsoft® MVP - Visual C# | MCPD
President - Tampa Bay IASA
Hey, hey, hey. Don't be mean. We don't have to be mean because, remember, no matter where you go, there you are. - Buckaroo Banzai
[ Forum Guidelines][ Articles][ Blog]
|
|
|
|
|
Why not delete the previous off-topic articles right now? I guess the authors don't matter.
Best regards,
Jaime.
|
|
|
|
|
But my life would be an empty shell if I didn't get to ask people to stop posting in the wrong forums. That's all that there is left in the hollow abyss that is my life.
|
|
|
|
|
I guess you can have a more sophisticated life-style by moving off-topic posts to the proper forum.
Best regards,
Jaime.
|
|
|
|
|
Thank you for bringing meaning to my pitiful existence.
|
|
|
|
|
Pete O'Hanlon wrote: my life would be an empty shell if I didn't get to ask people to stop posting in the wrong forums
And that would take all the fun out of it
"The clue train passed his station without stopping." - John Simmons / outlaw programmer
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
hello,
I'm what you may call a newbie,
I just want to know if it is possible to make a WYSIWYG RTF Control in VB.
my but is to make a real WordProcessor application,
I deed start it but it is not WYSIWYG, it will be lovely to make a Word like program in VB
Any ideas howTo ???
|
|
|
|
|
gillardg wrote: hello,
I'm what you may call a newbie,
I just want to know if it is possible to make a WYSIWYG RTF Control in VB.
my but is to make a real WordProcessor application,
I deed start it but it is not WYSIWYG, it will be lovely to make a Word like program in VB
Any ideas howTo ???
1. Don't post a programming question in this forum.
2. Read the title of the forum and reflect on why you shouldn't have asked it here.
3. Choose a development task that isn't leap years ahead of your skill level.
4. Start small, and don't run before you can walk.
|
|
|
|
|
gillardg wrote: I'm what you may call a newbie
I guess so. You posted in the wrong forum. VB forum would be better. Writing a word processor application is a pretty tall order for a newbie. I suggest learning little bits before jumping into something big like a word processor.
"The clue train passed his station without stopping." - John Simmons / outlaw programmer
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
The rle compressed data is 1, 4, 3, 9, 5, 3, 2, 7, 0. The program currently just prints all these values except the terminating zero. When properly decompressed, the output should be:
4 9 9 9 3 3 3 3 3 7 7
yet i cannot get it to do so.....
this is my code......I managed to get it to find the number of times yet not produce them as i need which is this
4 9 9 9 3 3 3 3 3 7 7
; rle_soln.asm
; sample program to demonstrate decompressing RLE
include 'emu8086.inc'
org 100h ; set location counter to 100h
jmp CodeStart
DataStart:
; this is the run length encoded data
; notice that it is a list of words (bytes)
; with a zero on the end
rleData dw 1, 4, 3, 9, 5, 3, 2, 7, 0
space db ' ', 0
CodeStart:
; put the address of the first rle value in bx
mov bx, offset rleData
; start a loop that will visit each value in rle data
LoopStart:
; compare value in list with zer0
cmp [bx], 0
; if value was zero, must be end of list so quit
je EndLabel
; move value in list to ax
mov ax, [bx]
; print it
call print_num
; print a space
mov si, offset space
call print_string
; add 2 bytes to the address in bx to move to the
; next value in the list
add bx, 2
; continue the loop until a zero is found
jmp LoopStart
EndLabel:
ret
DEFINE_PRINT_STRING
DEFINE_SCAN_NUM
DEFINE_PRINT_NUM
DEFINE_PRINT_NUM_UNS
Please Email me with an edit to this to show me where my alteration nees to be...
|
|
|
|
|
This forum is for posting article ideas or requests, not for general purpose help. You would do better to ask this question in one of the programming forums. The other thing to keep in mind is that you are asking a question about assembly code, so you may get limited responses. Also, please don't ask for private answers to a public question.
Scott Dorman Microsoft® MVP - Visual C# | MCPD
President - Tampa Bay IASA
Hey, hey, hey. Don't be mean. We don't have to be mean because, remember, no matter where you go, there you are. - Buckaroo Banzai
[ Forum Guidelines][ Articles][ Blog]
|
|
|
|
|