Zarneth
Knave
Australia
62 Posts |
Posted - Dec 02 2004 : 01:27:43 AM
|
quote: Originally posted by VBBR
(try using windows without explorer.exe).
Um. The common novice computer user yes. But to us people here there's many alternatives. I myself use Litestep to replace the taskbar, startmenu, and global keyboard key shortcuts part of explorer. Explorer.exe now only shows in the task mannager now when I'm using the file mannager part of it. And If I ever finish my VB file mannager project I'll have no use for explorer.exe at all.
|
"VB is gay because it's simple, stylish, functional, and simply works as expected." |
|
|
VBBR
Moderator
Brazil
617 Posts |
Posted - Dec 02 2004 : 05:06:14 AM
|
That's exactly my point. explorer.exe is just a GUI for Windows like KDE is for Linux for example.
The power of an OS resides in its core, the kernel. The rest is just appearance. |
Whatever. Who knows... |
|
|
sdw
Warrior
USA
160 Posts |
Posted - Dec 02 2004 : 2:55:00 PM
|
Actually, I think the better analogy is:
Windows : Dos :: KDE : Linux
Where Windows and KDE are GUI, Dos and Linux are the kernals. |
|
|
VBBR
Moderator
Brazil
617 Posts |
Posted - Dec 02 2004 : 4:02:13 PM
|
DOS is only the kernel for Windows 3.x and earlier. It was used by the Win95 platform and is dead on NT (Win NT, 2k, XP, 2004). |
Whatever. Who knows... |
|
|
Lachlan87
Moderator
USA
160 Posts |
Posted - Dec 02 2004 : 4:03:24 PM
|
Thats true if your using Win 9X, But NT/2000/XP kernals are based off Unix, like Linux is. So for XP, explorer is just a GUI for XP brand Unix, like KDE is just a GUI for Linux brand Unix. |
|
|
Eric Coleman
Gladiator
USA
811 Posts |
Posted - Dec 02 2004 : 6:22:24 PM
|
quote: Originally posted by Lachlan87
Thats true if your using Win 9X, But NT/2000/XP kernals are based off Unix, like Linux is. So for XP, explorer is just a GUI for XP brand Unix, like KDE is just a GUI for Linux brand Unix.
Umm, no it's not . NT was a total rewrite of windows, and it's Microsoft's own technology.
|
|
|
Lachlan87
Moderator
USA
160 Posts |
Posted - Dec 02 2004 : 6:55:19 PM
|
That's what I thought too, until I read differently in a book. . .I think it was Windows XP annoyances, but I'm not sure. Of course, the book I read it in may have been full of baloney, but that's why I said what I said. It doesn't matter enough to me to re-find where I read it.
Also possible that I mis-read/mis-remembered. |
Edited by - Lachlan87 on Dec 02 2004 7:14:45 PM |
|
|
Knight Chat X
Squire
USA
24 Posts |
Posted - Dec 05 2004 : 04:30:52 AM
|
The new standard is VB.Net, VB.Net is a complete overhual, there is a big learning curve, but things that were difficult before are so simple once you know how to do it, the key is knowing exactly what it takes to perform a specific task.
The main idea with .Net Framework was to make development easier and free up time a developer needs to spend on developing an app and make more functional app's targetted at web communications.
This backfire's when you are so used to VB6 syntax, the values of variable types have changed, example, a long in VB6 is now an integer in VB.Net. Instead of using an array, most the time you use a hashtable to store data. Everything is setup as a class, every object can be stored in other objects and/or transfered accrossed the net. You can create any program and just load the program from an ASP.Net webpage and it won't ask for permission to run the program it just does it which eliminates problems we face today with ActiveX regulations. Most things take only a single line of code to accomplish. Pretty much every Windows API function is embedded and accessible directly from within VB.net, no need to import references you can branch to whatever feature you require. Well, need to add references for some things, like DirectX but can use like Microsoft.DirectX.Direct3D. Security, biggest issue on all .Net languages, to be honest, you can view and dump source code, protecting it as far as I know currently is not possible, you can find tools on net to protect older software, but as for .net apps, those old tools fail. There are programs designed to dump out the exact source code of a .net app, not just unviewable, I'm talking about the actual source code, this freaks me out because the only option a developer really has is to try using obfuscation, which sadly only covers things up, once a dump tool is used the purpose of that is defeated because all the code logic and source is still dumped and code is re-constructed to a human readable form.
So when it comes to VB.Net or VB6, VB.Net is the latest version, but go with whatever you're comfortable with, if you're just starting out and plan on future developments use VB.Net, because VB.Net is very different than VB6, focus on just 1 language at a time, this avoids complications and early confusion, but be open to finding alternative info if need be.
U can actually get VB.Net 2005 for free right now, and that I know of there isn't any restrictions, just take in mind the 2005 tools use .Net Framework 2.0 and up. |
The net is getting bigger and bigger. |
|
|
cbx
Swordmaster
Canada
296 Posts |
Posted - Dec 05 2004 : 04:49:50 AM
|
quote: Originally posted by Knight Chat X
... Security, biggest issue on all .Net languages, to be honest, you can view and dump source code, protecting it as far as I know currently is not possible, you can find tools on net to protect older software, but as for .net apps, those old tools fail.
I don't believe that is correct, I remember watching an episode of The .NET Show http://msdn.microsoft.com/theshow/Archive.asp when .NET was first comming out and I recall that question being raised durring a demonstration of the ildasm tool. I'm pretty sure they said the .NET framework has tools to encrypt your compiled assemblies but I think they are command line based tools... |
Created by: X http://www.createdbyx.com/ |
|
|
cbx
Swordmaster
Canada
296 Posts |
Posted - Dec 05 2004 : 05:13:21 AM
|
quote: Originally posted by Knight Chat X
... you can find tools on net to protect older software, but as for .net apps, those old tools fail.
That is because when you compile a .NET app it is being compiled as an IL (Intermediate language) assembly. A .NET app, similar to java apps, are compiled down into a Pusudo Executable, that gets compiled on the fly by the CLR (common language runtime -> the core compiler of .NET) when you run the application. The CLR is responsible for compiling .NET apps at runtime, and turning them into native executable byte code...
For example if you copied a .NET app over to a mac and tried to run it, the CLR would read the apps exe file and compile the IL code within it, into machine code that targets the PowerPC processor and mac platform. If you ran that same app from within windows the CLR would compile the IL code into native x86 machine code targetting the windows platform.
That is of cource if microsoft ever ports the .NET framework over to the mac/unix/lunix platforms. Mono is a good example of this. http://www.mono-project.com/about/index.html
So .NET apps are not a true executable in the sence that they are not the same as a native vb6 executable. And as such an attempt to use old dissasembly code recontruction software it does not work on them.
Essentally it boils down to an exe compiled in vb6 will not be saved in the same file format as a .NET exe would be.
Hmmm I seem to be blabing on and on don't I? Ahh the future makes us all hope and wonder doesnt it? |
Created by: X http://www.createdbyx.com/ |
|
|
cbx
Swordmaster
Canada
296 Posts |
Posted - Dec 05 2004 : 05:20:33 AM
|
Just reading my prev post and had an epiphany, now I know why MS is hesatant to port .NET over to other platforms! Because if they did people would have more of a choice to use say the mac os verses the windows os. Which would give apple more OS market share. Ahhh I see now said the blind man to the deaf man who really wasent listening anyway... |
Created by: X http://www.createdbyx.com/ |
Edited by - cbx on Dec 05 2004 05:21:30 AM |
|
|
Knight Chat X
Squire
USA
24 Posts |
Posted - Dec 05 2004 : 07:14:23 AM
|
Hmmmm, lol, ILASM is the problem, you pretty much got it figured out, I'll go deeper into history though and maybe you can see what I'm sayin.
That's why we ran into that RPC problem with Blaster not long ago, for anyone searching for RPC on linux you can easily find RPC source code and information on kernel32 available in NT open source code releases, just like the old Winsock/TCP/UDP Socket, without which the Windows OS would probably never have made it, and this convo we're having wouldn't have been possible like this as remote computer communications wouldn't be in the Windows OS and without that ability it would have been like any other OS at the time, gotta remember DOS is short for Disk-Operating-System, it's function is for lower level operating system disk management, not graphical user interface navigation, the command prompt is still there, but file systems have changed and so has the technologies, but the concept is no different.
Back on the topic though, I've been programming since I was 12, 25 now, I remember Command Prompt, GW Basic, QBASIC, VB3, VBA, VB6, Bawk, Assembler, MASM, NASM, Borland, C++, HTTP, Perl, XML, DHTML, ASP.Net, and so many other languages. To be honest, all these languages except Assembler are Higher Level, higher level means they are made up of re-usable copies of previous code blocks, a higher level language is converted to assembly which is the lowest human readable language, then converted into machine language which is the onlything that's really understood by a computer. The majority of languages like C++ & VB, believe it or not, have the same father assembly, lol, the onlything that makes them different is the language and the way the person that made the language set's up the syntax for the language to be used to perform specific tasks, if you wanted you could create your own. Older languages used what's known today as scripting, there were 2 types of method's for a program to run, 1 interpreted, 2 executable (binary compilation of pure assembly), and interpreted language basically reads text, a script, such as QBASIC, and just acts on it, a main program exe reads the script. The exe is nothing more than a compiled program which actually contains executable code embedded. (A raw program dump.) When DLL's came out it changed everything, we could create archived binary machine code which can be accessed and re-used over and over and focus more on the main application development, work on another application and use the same DLL's in it as well, instead of having to waste development time by copying and pasting the same code making the main app bigger each time. Today languages are made of many DLL's and the OS comes with the majority of what's needed, when a new language is released it's common to need what's called runtime files, which is nothing more than a specific collection of DLL's which offers specific language features, core files are usually needed so a program can be intepreted, what I see today is nearly every program language is bloated and dependant on some form of runtime files, example, since C++ and VB require runtime files to run, you may have noticed by now you must also download .Net Framework if you've got Windows XP to run programs created in .Net, the runtime files associated with the language isn't already on your machine with the OS. As far as I can remember the dark secret in programming has been to harness assembler and you can do anything, with the latest changes in technologies and all the bloat, people today are only being educated on what they can see today, and the facts are slowly being covered up with newer additions. It's like telling everyone to use a game engine, once that game engine becomes standard, and is taught in a school, people think it's the only way and don't see what's underneath. I think what I'm getting at is before it was possible to hide information in an exe and make it difficult to decompile, somebody either forgot to close the door to the building and lock it or somebody did it on purpose to let anyone in, and since I've tried everything possible to shut and lock the door, I noticed the door isn't shutting and somebody's trying to charge big bucks for a security system and they know the door's not gonna lock.
I'm not going to give any info related to actually doing it, but I will let you know this if you want to test it on your own app, goto: http://www.analogx.com
Download textscan and run it on your compiled exe.
That tool can be used on DLL's, and it doesn't take much to figure out function parameters, weither the program is encrypted or not, with older win32 programs you could strip all that information down to 1 line that said MS-DOS with a program like Jeremy Collakes compressor, once you ran textscan that's the onlything that'd show. Now, with .net the only option that's givin is embedded key and thing to sign, now you can obfuscate your code, but sadly that's useless, all that is doing is changing the text to something funky, and if you want can spend thousands for a tool which claims to protect, the onlyone available seems to be dotfuscator. Even after running such a tool, you can still see everything just as it was before. A program will not run if the data is not correct, but the onlyway to protect the program is to change the compiled data in a way to where it's still readable to the machine, it's a hardware issue not software, as long as you can read all the data from hardware, which must exist for software to function, the data will always be able to be read by a person, to make it simple I'll just say I know these programs can't be secured properly and aren't, they are only focused on preventing common tools, viruses and trojans and prevent patching, but once there is more control of memory management some of these problems won't be as bad and I think that's being worked on right now. |
The net is getting bigger and bigger. |
|
|
Knight Chat X
Squire
USA
24 Posts |
Posted - Dec 05 2004 : 07:40:25 AM
|
I got worked up on that last post, on a side note I'd like to thank cbx, Eric Coleman, and the others, I think this site is great and hoping for more VB developers/gamers to come here in time, I first came accrossed this site using google.com. Then cbx sent link back to a post here that was related to a common issue I was having, come to find we aren't the onlyones with the problems. So in the long run if more people that have similiar issues come here maybe if somebody finds the solution we can all benefit.
Lastly, there used to be a few very focused VB communities and you could find programs for file sharing that was specific to VB programmers only, you could chat and trade source code, 1 was by Andreas, another CodeJack by Artifact Software. If they still exist might be of some use.
Laterz!
|
The net is getting bigger and bigger. |
|
|
Eric Coleman
Gladiator
USA
811 Posts |
Posted - Dec 05 2004 : 10:11:34 AM
|
so what exactly is the problem that being discussed? I'm a bit lost, lol |
|
|
cbx
Swordmaster
Canada
296 Posts |
Posted - Dec 05 2004 : 10:18:16 PM
|
quote: Originally posted by Eric Coleman
so what exactly is the problem that being discussed? I'm a bit lost, lol
OMG eric is lost! No way! I don't believe it! Dude you always seem to have an answer for everything! -> Knight Chat X was seeking a resolution to somehow encrypt or mangle his compiled apps so that others would not be able to decompile them and gain access to the underlying code.
Knight Chat X: I think I see what your saying, but on the other hand I also disagree. (in part) I have always been a firm believer in free source code, so for me, I'd be glad if someone wanted to take and use my source code for themselves.
Should not the act of code piracy encourage us to create a better more powerfull versions of our apps? If you develop free code in the first place you would not have to worry about people stealing it. By sharing code you breed competition. By all accounts competition is a good thing. Or so they say...
It also reminds me of a show I was watching about lunix versus windows and there's a person who said that people who do not share their code are inherently antisocial and people that do share their code considered more social, or at least do something along those lines. Basically if they were trying to make the point that Microsoft is very antisocial because they do not share their source code for the windows operating system And that the linux community is a much more social because they freely share their source code with others. |
Created by: X http://www.createdbyx.com/ |
|
|
|
|