Category Archives: 技术

Specify a Script to Run on Startup Shutdown Logon Logoff on Windows

It’s very easy to do it on Unix/Linux, cron is a very powerful tool for it.

But how to do it on Windows?

Run->”gpedit.msc”->”Computer ConfigurationWindows Settings” for Startup/Shutdown or “User ConfigurationWindows Settings” for Logon/Logoff.

Reference:
How to: Add startup and shutdown scripts in Windows – Online Training and Tutorials
Specify a Script to Run on Startup Shutdown Logon Logoff

Build Qt with S60 5.0 Public SDK

Build Qt with S60 5.0 Public SDK

Platform: Windows XP with SP3(now we only support Qt/S60 on it.)

1. SYMBIAN Development Environment

For downloading the packages, you need to register an account in the forum of Nokia,
http://www.forum.nokia.com/main/registration/registration.html

1-1. Carbide.C++
http://www.forum.nokia.com/Tools_Docs_and_Code/Tools/IDEs/Carbide.c++/
http://sw.nokia.com/id/7710eba7-4da7-4ddc-a52a-53b506cadb4a/Carbide_cpp_v2_0_en.exe

Carbide.C++ 2.0
Carbide_cpp_v2_0_en.exe 203MB

1-2. S60 Platform SDKs for Symbian OS, for C++
http://www.forum.nokia.com/info/sw.nokia.com/id/ec866fab-4b76-49f6-b5a5-af0631419e9c/S60_All_in_One_SDKs.html
http://sw.nokia.com/id/577ad48d-290c-4bb5-8bdf-779ea8a5bc6c/S60_5th_Edition_SDK_v1_0_en.zip

S60 Platform SDKs for Symbian OS, for C++, 5th Edition
S60_5th_Edition_SDK_v1_0_en.zip 622MB

2. Installation

Please install above 2 packages as default path.

Installation order: Carbide.C++, S60 SDK.

After Carbide.C++, you may need to install ActivePerl-5.6.1.638-MSWin32-x86.msi:

http://downloads.activestate.com/ActivePerl/Windows/5.6/ActivePerl-5.6.1.638-MSWin32-x86.msi

And you also need to use Git to get Qt from Qt S60 Git Repo, better to download this version of Git.

Please also make sure the path of our perl(default: C:Perlbin) should be before the perl in git(default: C:Program FilesGitbin) in PATH.

Please run this, Start->Carbide.c++ v2.0->Configure environment for WINSCW command line.

3. Build Qt with S60 5.0 Public SDK

cd C:git
git clone git://gitorious.org/+qt-s60-developers/qt/qt-s60.git
cd qt-s60
set PATH=C:gitqt-s60bin;%PATH%
configure -platform win32-mwc -xplatform symbian-abld -openssl-linked -qt-sql-sqlite -system-sqlite
make debug-winscw

4. Build Examples

cd C:gitqt-s60exampleswidgetsanalogclock
qmake
make debug-winscw
C:S60devicesS60_5th_Edition_SDK_v1.0epoc32releasewinscwudebepoc.exe
“Menu”(or click the middle one of the 3 buttons)->QtExamples->analogclock

You got it!

Build Qt with OpenSSL, VC++ 2005 EE(SP1) on Windows XP

Build Qt with OpenSSL, VC++ 2005 EE(SP1) on Windows XP

1. OS, Compilers and SDK
OS: Windows XP(SP3)
Compiler: Microsoft Visual C++ 2005 Express Edition with Service Pack 1
SDK: Windows Software Development Kit (SDK) for Windows Server 2008 and .NET Framework 3.5

You need set SDK path in your compiler settings by yourself.

2. Build OpenSSL 0.9.8h
Download OpenSSL 0.9.8h Original Source Package, unpack it to C:openssl-0.9.8h.
Please read C:openssl-0.9.8hINSTALL.W32.

Open the Visual Studio 2005 Command Prompt, then


3. Build Qt with OpenSSL
Download qt-win-opensource-src-4.4.3.zip, unpack it to C:Qt4.4.3-oss.

Open the Visual Studio 2005 Command Prompt, then

Build Qt for Symbian

About Symbian development environment, please have a look at:
SYMBIAN Development Environment – 1
SYMBIAN Development Environment – 2

Build Qt for Symbian

Platform: Windows XP with SP3(now we only support Qt/S60 on it.)

0. Patches

Patches for S60 development environment

1. Build Qt for symbian

qt-embedded-s60-opensource-src-4.4.2-pyramid.zip

You need to make sure to use Symbian X86 compiler (version 3.2.5 build 473).

Follow this steps in C:Qt4.4.2-pyramiddocinstall-s60.html

Uncompress the package and put it in C:Qt4.4.2-pyramid.

Set your PATH including C:Qt4.4.2-pyramidbin.

Configure:

C:
cd Qt4.4.2-pyramid
configure -platform win32-mwc -xplatform symbian-abld -qconfig symbian

Build:

bldmake bldfiles
abld build winscw udeb

Notice: Please store the Qt/S60 repository and Symbian SDK in the same hard disk drive, maybe you can store them in different drives, and then use tools like WinMount to mount them to same drive.

Before configure and build, you need set EPOCROOT to your SDK, I use “/S60/devices/S60_3rd_FP2_SDK/”, just because my sdk is in C:S60devicesS60_3rd_FP2_SDK.

2. Build Examples

2-1. How to build Qt/S60 application

C:Qt4.4.2-pyramiddocs60-with-qt-introduction.html

Please make sure to use the qmake in your Qt/S60 build.

qmake
bldmake bldfiles
abld build winscw udeb

Run Carbide.c++ v1.3, In the tab of “Symbian Project Navigator”, right click mouse in white space, choose “Import”, in the “Import” dialog, choose “Symbian OS Bld.inf file” under “Symbian OS”, then “Next”, then “Browse…” to choose the bld.inf in above directory. Then you could build it, run it and debug it in Carbide.c++.

2-2. XML HTML info Example

C:Qt4.4.2-pyramiddocxml-htmlinfo.html

Note: Standard out is redirected on some platforms. On Symbian using Open C stdout is by default directed to the console window, but this window may not always be visible. To redirect to a file instead, locate the c:\system\data\config.ini file (on either the emulator or the device) and change STDOUT to point to MEDIA4. This will redirect the console to c:\system\data\out.txt.

For me, the config.ini is C:S60devicesS60_3rd_FP2_SDKepoc32winscwcsystemdataconfig.ini, the out.txt is C:S60devicesS60_3rd_FP2_SDKepoc32winscwcsystemdataout.txt.

Run the Emulator, Start->S60 Developer Tools->3rd Edition FP2 SDK->Emulator.

In the Emulator, go to Menu->Installations->eshell, and type htmlinfo in prompt mode.

2-3. analogclock Example

Now it works fine for me.

Qt/S60 team are still working on the project to make all things work.

3. Build Qt applications for your mobile phone

Please have a look at C:Qt4.4.2-pyramidREADME and C:Qt4.4.2-pyramidINSTALL.

Just go to your Qt application directory,

qmake
bldmake bldfiles
abld build gcce udeb

Create a package for your mobile phone:

createpackage yourqtapplication_gcce_udeb.pkg

Note: Now the package will include Qt library in the .pkg file, if you already have a Qt application package installed, maybe you can’t install the next one. Then please remove these lines from the .pkg file of your second application.

“epoc32releasegcceudebQtGui.dll” – “c:sysbinQtGui.dll”
“epoc32releasegcceudebQtNetwork.dll” – “c:sysbinQtNetwork.dll”
“epoc32releasegcceudebQtCore.dll” – “c:sysbinQtCore.dll”