Tuesday, January 13, 2009

GAC / .NET SDK

gacutil to manipulate the Global Assembly Cache can be found in
C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin

At first I tried to install the .NET SDK, but it was telling me that it was installed already. It is actually installed with Visual Studio. When you start the VisualStudio Command Prompt, the path to it is set already.

Sunday, November 30, 2008

Java logger

import java.util.logging.Logger;
import java.util.logging.FileHandler;
import java.util.logging.SimpleFormatter;
import java.util.logging.Level;

logger = Logger.getLogger("com.mycompany.conversion"); // logger internal name
FileHandler fileHandler = new FileHandler("basic.conversion.txt", 1000, 1);
fileHandler.setFormatter(new SimpleFormatter());
logger.addHandler(fileHandler);
logger.log(Level.INFO, " Initializing GgWebService");

See also:
C:\Program Files\Java\jdk1.6.0_10\jre\lib\logging.properties
.

Friday, November 21, 2008

Strings

  • C#
    string is an alias for String
    String: UTF16
  • Java
    UTF16
  • C++
    wchar_t: UTF16 on Windows, UTF32 on Unix
    wchar_t is not portable, better to use ICU instead.
  • stl::string
    typedef basic_string < char > string;
    typedef basic_string < wchar_t > wstring;
    wstring string1 = L"obecně";
  • CString
  • ICU
    UnicodeString: UTF16 internally. Note that the endianess of UTF-16 is platform dependent.
    ICU does not use UCS-2. UCS-2 is a subset of UTF-16. UCS-2 does not support surrogates, and UTF-16 does support surrogates.
  • Note: most commonly, "Unicode" means UCS-2, but the difference between UCS-2 and UTF16 is not visible from the Java and C# standpoint
  • Windows TCHAR
    #ifdef UNICODE
    typedef wchar_t TCHAR;
    #else
    typedef char TCHAR;
    #endif
    TCHAR * toto = _T("obecně");
  • Note: in Java and C#, strings are immutable. String content cannot be changed after the object is created. See StringBuffer (Java) and StringBuilder (C#)
  • Sunday, October 26, 2008

    Sunday, October 12, 2008

    Eclipse survival kit





  • To find the associated bracket in a Java source on Eclipse, double-click the bracket to find the matching one.
  • Select square: Alt+Shift+A
  • Smaller fonts: open the General > Appearance > Colors and Fonts preference page. Select Basic>Text Fonts, Edit and change font size
    create WAR files, or AAR axis2 archive files)
  • Change author / user:
    Windows > Preferences > Java > Code Style > Code Templates > Comments
    Select Types
  • When installing Eclipse on Kubuntu, install on /usr/local, otherwise you may have issues with the plugins install




  • CDT
    - tab spaces not taken into account (Helios, Ubuntu 64 bits)
    - Needed to do a "apt-get update" after installing CDT otherwise, gave me funky compile error messages on printf and stuff
    - To access the gdb CLI, select the gdb process node in the Debug view. The gdb command line will then be available in the Console view. Though no prompt is visible, you can enter commands at the bottom line of the Console view. Doing so may desynchronize the IDE and gdb, so be careful when driving the debugger using this interface.
    - automatic save: Windows > Preferences > General > Workspace
  • cmake



  • create  a sibbling directory of the sources root:     search-l-2S-build 


  • cd search-l-2S-build 


  • cmake -G "Eclipse CDT4 - Unix Makefiles" -D CMAKE_BUILD_TYPE=Debug ../search-l-2S 


  • In eclipse CDT:


  • File > Import Existing Projects into Workspace > Next


  • Select root directory => Répertoire "cmakebuild" créé plus haut


  • Source accessible in "Subprojects".

  • ./eclipse_cdt -vmargs -XX:PermSize=512m -XX:MaxPermSize=512m -Xms1024m -Xmx1024m


  • J2EE
    You just get "Dynamic Web Project" creation menu only when you install J2EE Eclipse version



  • Useful files
        - eclipse.ini


  • if you get black zones within the Eclipse editor, you will have to switch from GTK3 to GTK2. To do this, add the following two lines to eclipse.ini  
  • --launcher.GTK_version
  • Software sites 
  • maven2 - http://download.eclipse.org/technology/m2e/releases


  • Problems
  • when using the maven plugin, the "Java build path" in the Eclipse will take the default JRE Eclipse config unless you specify "maven-compiler-plugin" as artifact in the pom.xml with version 1.8 for example
  • Formatting
    window->Preferences, ensuite choisir Java->Code Style-> formatter et sélectionner "Java conventions [build-in]".


  • Ganimede: 3.4 .. 25 June 2008
  • Galileo: 3.5 .. 24 June 2009
  • Helios: 3.6 .. 23 June 2010
  • C# survival kit

    * C# is the first “component oriented” language in the C/C++ family

    * csharp string <--> C++ wchar_t
    * to display a string from multiline (somewhat equivalent to the C++ backslash ):
    string toto = @"toto
    toto";
    * One must specify “override” to the method in the subclass if one want to override a virtual method from the superclass (as opposed to C++ where override is automatic)
    * Mutexes are of two types: local mutexes and named system mutexes. If you create a Mutex object using a constructor that accepts a name, it is associated with an operating-system object of that name. Named system mutexes are visible throughout the operating system, and can be used to synchronize the activities of processes.

    Sunday, September 14, 2008

    HTML frames automatic refresh

    <script type="text/javascript">
    top.frames['frame1'].location.reload();
    top.frames['frame2'].location.reload();
    </script>

    <html>
    <frameset rows="50%,50%">
    <frame src="TestResults.html" name="frame2">
    <frame src="Hem-1.0/nunit-logs/results-nunit_32.xml" name="frame1">
    <frame src="Hem-1.0/nunit-logs/results-nunit_64.xml" name="frame1">
    </frameset>
    </html>