RegisterLogin  
 Search
 
 
Thinking Stuff
Automated Trading Software
Automated trading is no longer just for the rich or nerdy. Our revolutionary software uses your trading rules, but none of your emotions. There's just one requirement - you know how to use a mouse.
  

You are here: Blog Normal layoutMedium LayoutLarge Layout Normal TextMedium TextLarge Text
 
Sharky's Trading Diary

Current Articles | Categories | Search

TS and Windows 2000, An Explanation

Background

TS is written in Visual Studio.NET. If that doesn't mean anything to you, well, it's just a programming language. There are many - C++, Java, Visual Basic, being some popular ones. They have slightly different capabilities, but in general you just use the one you are comfortable with.

Visual Studio.NET and Java both rely on your computer having their respective virtual machine running on your computer. Without the virtual machine, any programs written in VS.NET or Java will not work on your computer.

Both name their virtual machine differently - for VS.NET it's the ".NET Framework", and Java has the "JRE" or "Java Runtime Environment". They are both just other software you need installed before running software written in VS.NET or Java.

That's why you need v2.0 of the .NET Framework installed before you can run TS.

Virtual machines are supposed to make software work more consistently on different operating systems. Instead of the EXE file I create running directly on your computer, it runs on the "virtual machine". Virtual machines do other good stuff too, blah blah blah.


The Downside

EXEs written for virtual machines, meaning anything written in VS.NET or Java, have a lot of meta-data ("data about data") included, so the virtual machine knows what the hell is going on.

Anyone else can read that meta-data also. And, in fact, due this thing called "reflection", anyone can read your source code.

If they can read the source-code, they can compile their own version of the software. So they get your 2-odd years worth of hard work for free.

Moreover, they can then remove any code that does subscription checking, and hey presto, there is now in existence a version of your software that doesn't have any of that pesky need to pay anyone for the service they rendered.

They then post that to the infamous "Internet" and your source of income slowly dries up as more and more people forget about karma (which I believe in when it suits me :-)


The Solution

There are some products out there to solve this problem, and they are called "obfuscators". What they do is make it nearly impossible for people to read the source code. I say "nearly impossible", because anything's possible. But the obfuscators make it really difficult.

They also cost a lot of money. VS.NET does come with an in-built community edition of some obfuscator, but apparently they shouldn't have bothered. That's how good it is.

So I bought one of the expensive ones, and it works pretty well....


Windows 2000

...Except that I've worked out that the obfuscator is the reason that TS does not work with Windows 2000.

So I had a look around at other obfuscators, and they are really expensive. Really. It would hurt to buy another one.

I found an open-source obfuscator, the cost being the price of an accompanying e-book. So I bought that, and EXEs obfuscated with that one seemed to work just fine on Windows 2000.

Unfortunately it crashed when trying to obfuscate TS.

Because it's open-source, I was able to fix the bug in the obfuscator myself. And obfuscated TS just fine. But running the obfuscated version of TS I got an error, and I have no idea how to fix that one.

So I downloaded the trial version of one of the expensive obfuscators. And got exactly the same error.


The Result

I decided to wait for the next version of the obfuscator that I'm already using. It's coming "soon". I have no idea when it will be ready. And, there is also no guarantee that it will fix this problem. In fact, the creator of that software says that everything seems to work just fine for him with Win2000 with the old version.

Anyway, this is one of those things that is out of my hands. I assume that company wants to get their new product out as soon as possible, but it's all up to them now.

posted @ Tuesday, February 27, 2007 7:58 PM by Sharky

Previous Page | Next Page

COMMENTS

Dude, you should have used C++, like a real man :)
Seriously, the GUI might have been a bit harder to code, but it would have run like a cut cat on everthing right back to Windows 95 (unless you use threads).

posted @ Friday, March 02, 2007 4:34 PM by Craig


C++.... it's probably the one programming language that my mind doesn't want to wrap itself around.

Also, TS has many threads. Ones to download the prices, ones to do the auto-trading, etc.

posted @ Friday, March 02, 2007 7:05 PM by Sharky


C++ is not such a big step from Java or C#, but if you don't know what your doing it's like running with scissors.

posted @ Friday, March 02, 2007 11:30 PM by Craig


Yeah I can tinker with C++, but as for writing a complete auto-trading package, I thought it would be better to stick with something I was comfortable with.

posted @ Saturday, March 03, 2007 1:22 AM by Sharky


Click here to post a comment
 Print   

 
Categories
  

 
Archives
  

 
Trading Blogs
  

 
Quotes

"Thanks for your swift response."
- C.R. (United States)

  

 
Featured Articles
Download The Science of Getting Rich free!
  

 
Announcements
  

 
Blog
  

 
Popular Pages
  

 
Stats
Members Where Are They:
Visitor [4] : Home
Visitor [1] : Getting Started
Visitor [1] : Useful Free Stuff
Visitor [4] : How And Where To Download Historical Price Data
Visitor [1] : The Path
Visitor [1] : Setting Up In Thinking Stuff
Visitor [5] : Knowledge Base
Visitor [10] : Blog
  

Membership Membership:
Latest New User Latest: rockpile
New Today New Today: 0
New Yesterday New Yesterday: 0
User Count Overall: 305

 Copyright 2005-2007