Poll – Best Mozilla Firefox 3.6 Theme

Mozilla just released new version 3.6 of Firefox on 21.01.2010 http://www.mozilla.com/en-US/firefox/personal.html. In this new version, there are a lot of new mini features as when you open a new tab by clicking on a link, this new tab will be placed next to the current tab like Google Chrome, IE. In last versions the new tab will always be opened at last. The new feature which I do like is the Personas feature was integrated into Firefox too. I tried a lot of theme for Firefox and find out some of them are really the best.

Silvermel

Silvermel is offered as bundle – it installs “Silvermel and Charamel XT” extension to support font uppercase and letter spacing for labels on Firefox’s sidebars, Thunderbird’s folder pane, Thunderbird’s Address Book and Thunderbird’s Account Configuration window. The extension also colorizes the url bar according to security state.

Stratini Padded

Features of this theme:

– Centered combined back/forward dropmarker.
– Symbolic colors for all navigation icons.
– Unified style for all icons.
– Ability to combine buttons without an extension or any hacks.

Vista on XP

You don’t like the green in the XP theme of Firefox 3? Get the blue one of Vista for your XP!
Experimental now for all OS!

NASA Night Launch

This theme is for people who like it dark. If you’re running a dark desktop then this is for you. So zip up your flight suit, make sure your harness is secure, and enjoy the ride.

Yogurttree

A colorfully fun theme.

Chromifox Extreme

CHROMIFOX COMPANION is now included with Chromifox Extreme themes. Companion will allow you to make changes to Chromifox Extreme for example: Change the position of the tabs, Turn on or off Urlbar customization. Companion also does a few things behind the scenes to make sure that Chromifox Extreme looks the way it does.

Black Stratini

Black Stratini is my Stratini theme with a dose of the darkness. All highlights are in dark blue, as blue is the most common highlight color for Windows and Mac color schemes. Black Stratini uses Stratini Padded icons and spacing in Large Icons mode and Stratini icons in Small Icons and Teeny modes. This gives Black Stratini the unique ability to have three very different sizes in one package.

C# – Working with INI files

Long time ago developers used INI files to store application data. The INI file format is a common format for configuration files. INI files are simple text files with a basic structure. They are commonly associated with Microsoft Windows, but are also used on other platforms. The use of the “INI file” has been deprecated in Windows and corresponding data should be placed in the registry. The name “INI file” comes from the filename extension usually used, “.INI”, that stands for “initialization”. Sometimes files using the INI file format will use a different extension, such as “.CFG”, “.conf”, or “.TXT”. For more details about INI files you can read at following link http://en.wikipedia.org/wiki/INI_file . To work with this format, many developers tried to build a class for reading and writing value from specific section. They combined dictionary type and regular expressions to build a cross-platform INI helper class. That means their classes don’t use any API of any specific operating system.
However if we define that our applications only run under Windows, then I would like to share a wrapper which wraps two APIs used for reading and writing with INI files. They are GetPrivateProfileString and WritePrivateProfileString. Because they are APIs so we must declare their signature so that we can use with c#

[DllImport("kernel32.dll", CharSet = CharSet.Unicode)]
        static extern uint GetPrivateProfileString(
           string lpAppName,
           string lpKeyName,
           string lpDefault,
           StringBuilder lpReturnedString,
           uint nSize,
           string lpFileName);

        [DllImport("kernel32.dll", CharSet=CharSet.Unicode, SetLastError=true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        static extern bool WritePrivateProfileString(string lpAppName,
           string lpKeyName, string lpString, string lpFileName);

My wrapper will wrap these APIs in 2 normal function of IniWorker class. This class needs the path to INI files as its arguments

public IniWorker(string strIniPath,bool bCreateFileIfNotExists)
{
	m_strIniPath = strIniPath;
	if (!CheckFileExists() && bCreateFileIfNotExists)
	{
		File.Create(strIniPath);
	}
}

To read value of a key in an application name use simple code below

IniWorker iwWorker = new IniWorker("e:\\Sample.ini",true);
Console.WriteLine(iwWorker.IniReadValue("database", "server"));
Console.ReadLine();

It’s very simple but I would like to share because I see a lot of developers wrote complex code to work with this format. You can download my wrapper at this link “IniWorker

How to – Connect Belkin Wireless G Router to Fritz!Box SL Modem

Weeks ago my cousin changed his ISP from Alice-dsl.de to T-Home.de and she asked me to install Internet for her. I do not have much experience with installing Internet but I always think it’s simple with installing and configuring. If it’s so hard, no one can install himself and the ISP must be overloaded with the orders of installing Internet. Therefore I made an appointment and went to her apartment and thought it took me 10 minutes to finish the installation but I was wrong.
As I started to install, I read the letter of T-Home and recognized immediately that it requires so much than normal login data. As usual, when we want to connect to Internet through DSL we just need to enter the username (our phone number) and password (optional) but with T-Home I must enter username, T-online-number, Connection ID, number of joints users,… How can I enter these data in my current modem? It doesn’t support so I suggested my cousin to buy a new modem from T-Home.de and I would come again to install for her.
One week later, she called me and when I came to her apartment, she has a new modem Fritz!Box SL. This modem belongs to my cousin’s friend. He didn’t use it anymore and before sending it, he entered all login data. I tested and it works (I told you before, it must be easy) but my cousin has 2 laptops and she wants both of them must connect to internet through WLAN. But this modem doesn’t support WLAN therefore I must connect her belkin wireless g router to fritz box sl modem so that she can use WLAN as she wants.
There are two ways to accomplish this requirement but I didn’t test the second method. You can test it yourselves.
1. Use Belkin Wirelsess Router as Access Point (Easy, already tested)
– Enter all login data to your Fritz!Box SL Modem
– Connect the WAN port of Belkin router to the LAN port of Fritz!Box
– Turn on feature Access Point of Belkin router

– Finish
2. Connect Router to Router (Advanced, not tested)
– Enter all login data to your Fritz!Box SL Modem.
– Restrict the IP range of Fritz1Box SL Modem from 192.168.21.2 – 192.168.21.40
– Disable DHCP of Belkin router.
– Set WAN access to static IP and enter configuration as following. IP Address 192.168.123.2. Subnet mask 255.255.255.0. Default Gateway 0.0.0.0 (or 192.168.123.1)
– In LAN Settings, set LAN IP to 192.168.21.50 with Subnetmask 255.255.255.255.
– Connect LAN port of Belkin router to LAN port of Fritz!Box SL.

Please note that the IPs I use in this post are for illustrating. They will vary in your case. You must connect your own laptop to the router and modem and use ipconfig command to discover your gateway, access it and edit the configuration. I will insert more images in this post if I come by my cousin and take some snapshot. Hope that you can solve your installation with these instructions.
Some helpful links which I read for this case
http://ezinearticles.com/?Wireless-Networking—-Router-Vs-Access-Point&id=70176
http://www.togaware.com/linux/survivor/Router_Router.html
http://www.diffen.com/difference/LAN_vs_WAN

How to unpack Xenocode?

Although LibX has a powerful to unpack Xenocode, I would like to introduce another way to unpack Xenocode with OllyDbg. It is not an optimal way because with it you can not get all assemblies back, but it will help in some cases.

Use Internet Explorer to open .SWF files. Press F11 to have a full screen.

Download tutorials:
Xenocode Postbuild 2007: http://hintdesk.com/Web/Tut/Reverse/DotNet/Xenocode.zip

Xenocode Postbuild 2008: http://www.mediafire.com/?iz5dzltttfm

AssMer – Tool to merge assembly

As I develop and deploy software, I would like to merge all assemblies to one and publish them to users. There are a lot of tools to do that. All of protectors and obfuscators provide this functionality too but I would like to write for myself a such merger to have an experience about adding and merging assemblies.

And now I would like to introduce to you AssMer, a tool to merge your assemblies. As its name, you can merge only until now ONLY assemblies with each other. You can not merge an assembly with a native code file.This tool is based on source code of Mono.Merge

This software will be on developed aiming to support more functions

  • Version: 1.0.0.1

NOTE: Please contact me if software doesn’t work.

LINK DOWN : http://hintdesk.com/Web/Tool/AssMer.zip

SCREENSHOT

AssMer

HISTORY

[1.0.0.1]

First version