Jump to content
Compatible Support Forums
Sign in to follow this  
jdulmage

Opinions on Registry Cleaner I wrote nearly 4 years ago I im

Recommended Posts

Quote:
It uses %systemroot% & %windir%... whatever system you use that on it will find the proper Windows folder (or should since those are system environment variables) in the batch installers, & in the code itself in the .exe file, it uses API calls to find what it needs thru the GetWindowsDirectory API call.

A quote from it:

"1.) Copy the program APKRegistryCleaner.exe to you harddrive (anywhere, as it is fully self-guiding & intelligent code that can find your system registry automatically) & run it."

A harddrive is NOT a network drive, although, once the files are in place, it will run even from a floppy.


If I extract your program to a folder on D: say, 'D:\APKRegClean', and then run your installer, it will fail. Why? Because the very first line executes 'C:'. So sorry bud, but no, whatever system you are on, it won't work if like I said, you extracted it to another drive.


Quote:

Quote:
It seems a lil pointless to me to copy all those registry files to multiple places. Thats bad practice dude. Its a lil messy if you ask me.


Is it? Do you know the exact mechanics of this program?? You have not considered if it is necessary for it to function for it to be that way... clue:

IT IS! Absolutely necessary for one reason only: Safety.

[snip]


Actually I did, and I know how I would have done it. Just take what I said as a friendly comment. I'm not going to get into the logistics of this with you.

Quote:

Quote:

So I installed it, and I ran it. Things I noticed: -

1. The title bar flickers like mad, as its changing to a 'working' message, and its original constantly, as does the mouse cursor... urgh.



That's to let users know it is working & was at user request.


How... urm, poo (imo.. no offense intended). How about a small lil panel that alternates its colour? Using the title bar is.. well, I don't like it, but then I guess it doesn't matter if I do or not, as I won't be using your program really. Just thought I'd give you my feedback.

Quote:

This also (as a side benefit to me) makes it harder for others to dissassemble as well, changing titlebars.


...must be really crap programmers trying to disassemble it then if that causes them a problem...


Quote:

Quote:

2. Its using next to no processing power.. what gives? LOw CPU utilisation code? or perhaps Delphi (thats what you develop in yes?) just can't use resources very efficiently (even on the high CPU setting which doesn't change Window's own priority, though I guess it an internal setting to your program).



Delphi is the MOST efficient of all the RAD tools & even gives C++ a whipping... in fact, ask Clutch!


Yo Clutch, Delphi is faster then VC!? *raises an eyebrow*. Actually if you answer that Clutch, best send me an email or something. Don't wanna get into a bigger debate here do we.


Quote:

On its multitasking/multithreading:

It is internal to itself, and this program is already (due to string parsing) using alot of CPU (4% on any program is quite a bit)... I internally multitask it alot so it is smooth & also cede processor time manually rather than depending on the scheduler stressing it more! I am of the "old-school" & come out of the Win16 coding world. I don't believe in depending on the OS or stressing it making it timeslice. I do it myself, has never failed me yet in an app, or the OS itself.

Hehe... Put it this way: If I did not, once the main engine started you could not even move the screen & it WOULD use around 10% of the CPU... I won't allow that, or build such junk.


You timeslice in your own program huh? Then why does it stop processing the registry when the help screen is displaying? or when you click on a menu item? Thats some timeslicing...

Out of interest, I think 4-10% is nothing. If a user has the program running as the fore-most task, it should automatically use more. Why not make it use the available idle time, like RC5/SETI etc does? Then you would have the best of both world. Maximum CPU usage, and no slow down to the user.

Quote:

Now THAT is BAD PRACTICE! Again, I don't build that kind of junk. I build clean programs that cooperate with others, are not CPU hogs, nor are they inefficient (believe me, this one's as optimized as the compiler can make it, the FASTEST compiler, & I go WAY above & beyond that too with directives, & use of register variables as well as other tricks, + Win32 API calls like crazy & alot of Inline Assembler I dumped from the CPU analysis Windows into the code inlined using ASM).


You use a lot of 'fancy' controls. Thats hardly clean.


Quote:

Also, DO compare it to its competition as others did & found mine WAY better above on the first page of this thread.


I did. I've used others before, and I'm sorry to say, I prefer them.

Quote:

Oh, in U.S. English, it IS "Analyze" not the U.K. Analyse afaik. Check www.dictionary.com ... it is that spelling. Former National Spelling Bee contest finalist here in fact in my youth.


Well, I was just pointing it out incase smile

Quote:

Quote:

over 10 minutes ago and its still going. I'll update this post when its finished with the final time.



Should take about 20-25 minutes, tops 30, on a Pentium III CPU 1ghz as it notes in its help menu item.


Well it took considerably longer on my Dual PIII 800.


Quote:

You can compare it to other as did the testers earlier. They found yes, it ran 2-5 times as long, but found 2-5x as many bogus entries to remove... 2 of them bought it from me in fact, & still are running fine...

No problems caused by it either. Two of the testers purchased it from me in fact... bonus!


I guess us two are the Minority Reports that Mr Cruise is looking for laugh

Oh, and good for them!

Quote:

Quote:

4. Its not multi-threaded.


What?

I think you had best use taskmgr.exe & restate that... whatever you use to analyze things is WRONG!

It has 2 separate threads... wtf are you smoking man?

Rather, what on earth did you use to analyze it to make that erroneous statement??


See above. It may have seperate threads, but it doesn't use them very well - again, imo. This is just feedback. Do with it what you will. Don't throw stones just because its not what you wanted to hear.

Quote:

Quote:

5. There is no difference between the 16-bit and 32-bit menu options when running in XP, and I'd say 2000 but I can't check that to verify it. It would be nice if you talor the options dynamically to suit the OS that its running on.



In XP, no!

There is in NT there is vs. 9x... I put that into the menus for legacy Os' which I should dump, but I wrote the code "generic" so it runs on them all fine & does a good job equally on all!

HOWEVER: The program runs on them all fine. In XP you will note, you can use either one & its fine & summons regedit.exe anyhow!


Soo... detect the OS that its running on, and tayler the menus to suit. It'll make a more professional looking product.

Quote:

Quote:

6. There is an icon on the taskbar and in the system tray, and no option to have either one. Both is pointless.



Use its hide screen option. You will have only icon in tray. You must not have seen that too.


It would be nice if minimizing the window did this.


Quote:

Quote:

Oh, and I agree with Alien about the list clearing when you delete stuff - if it does do that. I'm yet to find out... its still bloomin' scanning after about 10 mins!!!!!! Thats crazy.



Well, it's already proven by testers on the first page of this thread that it works better than what?

5 others including Norton Products & System Mechanic as well as a host of others it competed against above?

Now... what's crazy?


Well I am for one thing laugh

Quote:

a.) One that works thoroughly & find the most bogus entries (but takes some time to work)...

b.) Or the one that misses stuff & also exposes dangerous ones to remove like OCX registrations.


...each to their own...


Quote:

Quote:

Also, you should have an option to save the keys it finds, so that you can load it up again later. Just a thought.



It does! The Backup to Event Log & File Backup checkboxes near its bottom do that... you can even copy records, or parts of them it shows on the grid. What more do you want? I think you missed that too...


*sigh*. What I mean is, you can't save the keys to a file, and then reload them into your program for deletion later. I think its you that missed what I meant, not that I missed stuff in your program wink Language barriers eh... the cause of lot.

Quote:

Quote:

EDIT: O'kay the program is still running and I have go out, so I'm unable to see how long it'll take. Its at 70% and its been over 40 minutes amd found less then 30 keys.



What did you compare it to? Nothing right??


What did someone say in Under Seige once? Assumptions are the mother of all f**k-ups.


Quote:

For your speed variation, several factors can affect this:

1.) What CPU type did you run it on speed-wise?

2.) How big are your registry hives files

3.) How many other processes are running

4.) While running, did you minimize it??

* These factors ALL effect its speed.

HOWEVER, Speed's NOT the important part:

Accuracy & Safety ARE... Especially regarding system files like these.

I am SO confident in the engine, that I actually feel I could remove the backup to EventLog & Files in fact... but leave them there for users JUST IN CASE, time & date stamped.

Lastly, if you cleaned your registry recently... and mine STILL found more...

Well, that ought to tell you something if the others analysis above (who actually DID compare it to other registry cleaners & found mine better) did not.

(NOT TOO GOOD OF AN ANALYSIS... give it time, just like novocaine, it always works, & better than the rest (proven already, & safer too), to the point two testers purchased it from me already! Neat...)


Sheesh, I don't have time for this. I was trying to help YOU, not get roped into a debate. I see no point getting into an argument trying to convince you or anyone else I am right over you, and then you doing the reverse. If my feedback isn't what you wanted, then I'm sorry.


Quote:

P.S.=> Cynan, I have to ask a question: Are you sober right now? Not bustin on you, but dude, You missed things it does that you said it does not, & said it was not multithreaded & it is... I honestly found TOO many holes in your analysis... apk


Well, as above, if its threaded, its threaded badly :P

Goodnight.

Share this post


Link to post
Quote:
Quote:
If I extract your program to a folder on D: say, 'D:\APKRegClean', and then run your installer, it will fail. Why? Because the very first line executes 'C:'. So sorry bud, but no, whatever system you are on, it won't work if like I said, you extracted it to another drive.


Not anymore!


Just pointing out what Alien was probably on about.

Quote:

(BUT, even with the C: at the start, & if it does fail, surely you knew that right & opted to run it from C:\TEMP say, correct?)


S'not the point. We were testing all aspects of your program no? Manual installations shouldn't have to be done. Anyway, you have fixed it now (I trust you, I don't need to check).

Quote:

Another thing: I know for sure most systems don't have multiple harddisks...


Thats just ignorant. You should program to cope with all situations. Not just the most popular.

Quote:

Quote:
Actually I did, and I know how I would have done it. Just take what I said as a friendly comment. I'm not going to get into the logistics of this with you.


Good, you'd have no standing since you don't know how the program really works inside... it'd be unfair.


Whatever you say dude smile

Quote:

NOT gonna happen: Flipping the title bar like that stalls hackers/crackers & disassemblers as well as other stuff I do... no go! Plus, it is a good indicator of it running to my users not only on its own thread, but in idle time of the program... pretty slick, as is most of the interface feedback... efficient & slick!


How in heck can that stop hackers/crackers?

Quote:

I take it you are such an individual: A program cracker. Well... you'd be surprised the lengths I take to stop disassembly.


Assuuuuumption.

Quote:

That's a MODAL DIALOG BOX...no way to not have that do that! You show me how, I will get you published ok?


Fair enough. I personally wouldn't be using model boxes, and I personally wouldn't have execution being stopped when going through the menus.

Quote:

Guy, I don't think you have programmed in your time from some of your statements... you don't even know how to identify if a program is multithreaded or not when you said above mine was not.

Not busting on you, but before you make statements like that, learn how some of this stuff works... some stuff you can do, some you cannot. Think about Morpheus in the Matrix: "Some Rules can be bent: Others can be broken... think that's air you're breathing?"

On multiple thread driven programs: Hey, I invite you to try it sometime. Have fun blocking messagepassing & using semaphores & mutexes in C/C++ since you think it's so great...


Assuuuumption.

Quote:

LOL, boy are YOU in for a surprise. C/C++ are 5x as tough & slow coding normally... since you like using it, & espouse it above... find out that Delphi rules there too, much easier!


Tough? I best I better keep to being a lil kiddie and running lil scipts and being 37|t3...

Quote:

That's assuming you can code more than batches though, I should not assume anything.


*claps*

Quote:

A stringgrid is a std. control in Delphi. Think the SETI Spy Client you mention above does not use those also? It does MASSIVELY! Wake up, write some of this stuff before you open your mouth bro.


Never said I used SETI Spy. Try running the command-line version. Thats what I'be used.

Quote:

I subclass alot of mine in fact to make the LESS fancy, this is one of them along with the form of the program itself. Lighter, faster, & less memory intensive in fact. Hence, it lacks the mouse scroll. I tore that type up & out.


Is a sub-class not an extension of a previous one? i.e., a derives class? and thus, bloat it more?

Quote:

Heh, go ahead... use your VC++ with its dependency on MSVCRT.DLL & others OLE Servers to run form code with tons of "efficient" message passing & also the use of .OCX's ok... then, tell me about efficient.


Where'd I say I use VC? and if you are ASSUMING that I do use that now, how come you are saying how I should try programming everywhere else? This isn't a very consistant reply.

Quote:

Like up above trying to tell me how to code, look before you leap I guess!


Telling and suggesting isn't the same thing.

Quote:

The important point is you may pickup something here! I hope you do... on coding at least, & it may inspire you to try it.


Oh yeah, I'll go do that right not!! not.

Quote:

ANYONE can do it, it's the advanced nutty stuff like threads & messaging that get tough with syncronizing it all without having it break on race conditions.


Threads ain't really that hard a thing to do. Well, I guess it depends on how each indiviuals thought process works.

Quote:

Another of your wild leaps of faith in my spelling though, but I am used to that from UK folks & I've seen that before, lol... arstechnica guys are huge on that, it's hilarious, because it's their last resort in an "when ars attacks" scenario.


LMAO!! I was just wondering if it was right or not!

Quote:

Quote:

Well it took considerably longer on my Dual PIII 800.


That's 800mhz first off... secondly, it is also dependent like I said on the size of your registry, other programs running... lots of things I mention above. Do see that list.


That is is, two of them, and as your app. is multi-threaded, it'll run on both right? Oh no wait I forgot, it only has two threads, and only one of those does any processing... gee, what a shame.

Quote:

Trust me: GREAT DESIGN using threads!


I would, but sorry... no dice. Its not really using threads. I mean, any program can do that. I'm surprised actually that Dephi doesn't handle a small thing like that for you.

Quote:

At least now you know you were in error stating it did not have multiple threads. Believe me, it uses them VERY well...


O'kay, perhaps bad wording on my part. Its not that it doesn't have more then one thread, its that it doesn't really use threads very well. It might as well have none.

Quote:

Again: Without them, it would not even let you MOVE IT AROUND ONSCREEN while the engines run, let alone put out information... the code is THAT tight & powerful without threads & timeslices.


Your program only uses 4% of the CPU, so why would it stop you moving the dialog around the screen? Windows handles the dialog box.. not your program (and you say I should look into programming!?).

Quote:

*sigh*. What I mean is, you can't save the keys to a file, and then reload them into your program for deletion later. I think its you that missed what I meant, not that I missed stuff in your program wink Language barriers eh... the cause of lot.


Quote:

That's OK, & if you can give me a BIT stronger of an example, I could do that... but why?

LOL, blow them away right then!


Like Alien quite rightly said, not everyone wants to do that.

Quote:

Most importantly, whether you use my program or not... I hope you learn more about how this code works & get into programming yourself. It's fun & folks may get use or a kick out of something you do someday! If you get paid too? Hey, bonus... I want my cut! lol...


Not likely. My sutff is © me.

Quote:

Quote:

Well, as above, if its threaded, its threaded badly :P


Ok, I have to turn you onto one FACT, & maybe you can show me how to do this:

How to even make a THREAD overcome a modal dialog box like my HELP & ABOUT boxes are? Or, my menus?? Afaik, that is a NO GO here...


If the interface was on its own thread, then the help dialog box would only halt the interface, and not the engines thread. Thats how threads works. They are independant of each other.

Share this post


Link to post

Erm, I really did not mean to sound like I was attacking your spellling. Seriously, I just looked at it and thought, is that spelt right!?

 

The © also btw, was meant as the copyright symbol.

 

The command line version of SETI isn't multi-threaded. I wasn't using that as an example of that. If you read what I said, you'll see I was talking about that in terms of how it just uses the idle time to run in.

 

Oh, and for what its worth, I actually I did go out on Friday and I wrote these replies when I got in between something like 2 and 4am. I think I can be accused some spelling mistakes in a forum. Geesh.

 

Anyway, as I'm making mistakes ;), and feel anyone can see my points clearly already, now, I will rest my case.... (its very heavy and my arms acheing wink.

Share this post


Link to post

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×