Hello,
I made my own ppc theme and when I'm using InClose mobile with "Background -> The current Theme" checked, it looks like in the attached picture.
vista.inf:
Code:
[Version]
Signature = "$Windows NT$"
CESignature = "$Windows CE$"
Provider = "Jimmy"
[CEStrings]
Appname = "Vista"
InstallDir = %CE2%
[SourceDisksNames]
1 = ,"vista",,vista
[SourceDisksFiles]
stwater_240_320.gif = 1
stwater_320_240.gif = 1
tdywater_240_320.gif = 1
tdywater_320_240.gif = 1
[DefaultInstall]
CopyFiles = CopyDir01
AddReg = Registry
[CopyDir01] ; (%CE2% : \Windows)
"stwater_240_320.gif",stwater_240_320.gif,0x00000400
"stwater_320_240.gif",stwater_320_240.gif,0x00000400
"tdywater_240_320.gif",tdywater_240_320.gif,0x00000400
"tdywater_320_240.gif",tdywater_320_240.gif,0x00000400
[DestinationDirs]
CopyDir01 = 0, %InstallDir%
[Strings]
reg_path00 = Software\Microsoft\Color
reg_path01 = Software\Microsoft\Today\Vista.tsk
[Registry]
HKLM,%reg_path00%,4,0x00000001,FF,FF,FF,00
HKLM,%reg_path00%,6,0x00000001,00,00,00,00
HKLM,%reg_path00%,7,0x00000001,00,00,00,00
HKLM,%reg_path00%,11,0x00000001,00,00,00,00
HKLM,%reg_path00%,12,0x00000001,00,00,00,00
HKLM,%reg_path00%,13,0x00000001,C0,C0,C0,00
HKLM,%reg_path00%,14,0x00000001,FF,FF,FF,00
HKLM,%reg_path00%,15,0x00000001,FF,FF,FF,00
HKLM,%reg_path00%,16,0x00000001,6C,AB,B0,00
HKLM,%reg_path00%,25,0x00000001,C0,C0,C0,00
HKLM,%reg_path00%,26,0x00000001,FF,FF,FF,00
HKLM,%reg_path00%,27,0x00000001,00,00,00,00
HKLM,%reg_path00%,28,0x00000001,FF,00,00,00
HKLM,%reg_path00%,36,0x00000001,FF,FF,FF,00
HKLM,%reg_path00%,37,0x00000001,6C,AB,B0,00
HKLM,%reg_path00%,38,0x00000001,00,00,00,00
HKLM,%reg_path00%,39,0x00000001,FF,FF,FF,00
HKLM,%reg_path00%,40,0x00000001,FF,00,00,00
HKLM,%reg_path00%,5,0x00000001,00,00,00,00
HKCU,%reg_path01%,Color_NavBarText_Highlight,0x00000001,FF,FF,FF,00
HKCU,%reg_path01%,Color_SoftkeyFlatCenter,0x00000001,00,00,00,00
HKCU,%reg_path01%,Color_TitleFlatCenter,0x00000001,00,00,00,00
HKCU,%reg_path01%,Color_TitleFlatDoneBtn,0x00000001,E5,49,30,00
HKCU,%reg_path01%,Color_TitleFlatDoneBtn_Highlight,0x00000001,9D,47,32,00
HKCU,%reg_path01%,Color_Highlight,0x00000001,B6,D5,E9,00
HKCU,%reg_path01%,Color_HighlightText,0x00000001,00,00,00,00
HKCU,%reg_path01%,Color_MenuText,0x00000001,00,00,00,00
HKCU,%reg_path01%,Color_CommandBarText_Highlight,0x00000001,00,00,00,00
Can anyone tell me, what's wrong? Thanks very much and sorry for my bad english...
I think its because you have created a orientation theme - inclose looks for tdywater.gif and as yours are named tdywater_240_320.gif & tdywater_320_240.gif it uses default windows one. Change your theme to a standard format and it will work.
btw with what software did you make the theme? And nice looking theme
I have it and maybe
Jimm98y.. i use inclose too and if im not mistaken you want that blue part to be taking off inclose correct.. well if you do you need to go to the inclose settings and in background just click none it will be white, but i dont know why when you click current theme its allways blue, as for user image its tuff to do that.. Hope that helps
Josh
I think its because you have created a orientation theme - inclose looks for tdywater.gif and as yours are named tdywater_240_320.gif & tdywater_320_240.gif it uses default windows one. Change your theme to a standard format and it will work.
Click to expand...
Click to collapse
OK. I'm going to try it but I hoped there is some registry key which can change it.
with what software did you make the theme? And nice looking theme
Click to expand...
Click to collapse
Thanks. I made it with notepad, paintbrush and cabwiz.exe, because the other programs (like themegence) looks too complicated and cannot offer such possibilities.
go to the inclose settings and in background just click none it will be white
Click to expand...
Click to collapse
Yes, I know about it, but I would like to have a "transparent menu". I tried to use my own picture in background, but it doesn't work in landscape because there cannot be set 2 pictures.
Thanks very much now it works fine. Here is the final version of this skin for anyone who is interested in:
How did you do it
Jimm98y.. How did you get to be transperant.. i tried reading the other messages but i cant get it.. coul d you help?
Re: How did you do it
Juicy J said:
Jimm98y.. How did you get to be transperant.. i tried reading the other messages but i cant get it.. coul d you help?
Click to expand...
Click to collapse
I used background files named tdywater.gif and stwater.gif, both in resolution 320x320, so the inf file looks like this:
Code:
[Version]
Signature = "$Windows NT$"
CESignature = "$Windows CE$"
Provider = "Jimmy"
[CEStrings]
Appname = "Vista"
InstallDir = %CE2%
[SourceDisksNames]
1 = ,"vista",,vista
[SourceDisksFiles]
stwater.gif = 1
tdywater.gif = 1
[DefaultInstall]
CopyFiles = CopyDir01
AddReg = Registry
[CopyDir01] ; (%CE2% : \Windows)
"stwater.gif",stwater.gif,0x00000400
"tdywater.gif",tdywater.gif,0x00000400
[DestinationDirs]
CopyDir01 = 0, %InstallDir%
[Strings]
reg_path00 = Software\Microsoft\Color
reg_path01 = Software\Microsoft\Today\Vista.tsk
[Registry]
HKLM,%reg_path00%,4,0x00000001,FF,FF,FF,00
HKLM,%reg_path00%,6,0x00000001,00,00,00,00
HKLM,%reg_path00%,7,0x00000001,00,00,00,00
HKLM,%reg_path00%,11,0x00000001,00,00,00,00
HKLM,%reg_path00%,12,0x00000001,00,00,00,00
HKLM,%reg_path00%,13,0x00000001,C0,C0,C0,00
HKLM,%reg_path00%,14,0x00000001,FF,FF,FF,00
HKLM,%reg_path00%,15,0x00000001,FF,FF,FF,00
HKLM,%reg_path00%,16,0x00000001,6C,AB,B0,00
HKLM,%reg_path00%,25,0x00000001,C0,C0,C0,00
HKLM,%reg_path00%,26,0x00000001,FF,FF,FF,00
HKLM,%reg_path00%,27,0x00000001,00,00,00,00
HKLM,%reg_path00%,28,0x00000001,FF,00,00,00
HKLM,%reg_path00%,36,0x00000001,FF,FF,FF,00
HKLM,%reg_path00%,37,0x00000001,6C,AB,B0,00
HKLM,%reg_path00%,38,0x00000001,00,00,00,00
HKLM,%reg_path00%,39,0x00000001,FF,FF,FF,00
HKLM,%reg_path00%,40,0x00000001,FF,00,00,00
HKLM,%reg_path00%,5,0x00000001,00,00,00,00
HKCU,%reg_path01%,Color_NavBarText_Highlight,0x00000001,FF,FF,FF,00
HKCU,%reg_path01%,Color_SoftkeyFlatCenter,0x00000001,00,00,00,00
HKCU,%reg_path01%,Color_TitleFlatCenter,0x00000001,00,00,00,00
HKCU,%reg_path01%,Color_TitleFlatDoneBtn,0x00000001,E5,49,30,00
HKCU,%reg_path01%,Color_TitleFlatDoneBtn_Highlight,0x00000001,9D,47,32,00
HKCU,%reg_path01%,Color_Highlight,0x00000001,B6,D5,E9,00
HKCU,%reg_path01%,Color_HighlightText,0x00000001,00,00,00,00
HKCU,%reg_path01%,Color_MenuText,0x00000001,00,00,00,00
HKCU,%reg_path01%,Color_CommandBarText_Highlight,0x00000001,00,00,00,00
I wanted to share a small script I wrote for those who know how to use it. It converts non-binary pim-backup message files to html files.
Usage: ruby <file> <message_file>
Code:
#-sms2html----------------------------------------------------------------#
# ChaosR (<[email protected]>) wrote this file. As long as #
# you do not touch this note and keep this note here you can do whatever #
# you want with this stuff. Also, the author(s) are not responsible for #
# whatever happens using this. #
#-------------------------------------------------------------------------#
require 'jcode' if RUBY_VERSION[0..2] == "1.8"
class SMSConverter
attr_accessor :messages, :raw, :by_folder, :by_name, :by_number
SPEC = [
:msg_id,
:sender_name,
:sender_address,
:sender_address_type,
:prefix,
:subject,
:body,
:body_type,
:folder,
:account,
:msg_class,
:content_length,
:msg_size,
:msg_flags,
:msg_status,
:modify_time,
:delivery_time,
:recipient_nbr,
:recipients,
:attachment_nbr,
:attachments
]
RECIP_SPEC = [
:id,
:name,
:phone,
:var1,
:var2,
:type
]
FOLDERS = {
"\\%MDF1" => "INBOX",
"\\%MDF2" => "OUTBOX",
"\\%MDF3" => "SENT",
"\\%MDF4" => "TRASH",
"\\%MDF5" => "DRAFTS"
}
def initialize(file)
f = File.open(file)
@raw = f.read
f.close
raw2array
clean_messages
sort_messages
end
def raw2array
messages = []
state = { :arg => 0, :escaped => false, :in_string => false }
sms = {}
@raw.each_char do |byte|
arg = SPEC[state[:arg]]
sms[arg] = "" unless sms[arg]
if byte == "\0" or byte == "\r"
next
elsif state[:escaped]
sms[arg] << byte
state[:escaped] = false
elsif state[:in_string]
if byte == "\""
state[:in_string] = false
elsif byte == "\\"
state[:escaped] = true
else
sms[arg] << byte
end
elsif byte == "\\"
state[:escaped] = true
elsif byte == "\""
state[:in_string] = true
elsif byte == ";"
state[:arg] += 1
elsif byte == "\n"
raise "Faulty conversion or corrupt file" if state[:escaped] or state[:in_string] or state[:arg] != 20
messages << sms
sms = {}
state[:arg] = 0
else
sms[arg] << byte
end
end
@messages = messages
end
def clean_messages
@messages.map! do |sms|
sms[:modify_time] = Time.local( *sms[:modify_time].split(",") )
unless sms[:delivery_time] == ""
sms[:delivery_time] = Time.local( *sms[:delivery_time].split(",") )
else
sms[:delivery_time] = sms[:modify_time]
end
sms[:recipient_nbr] = sms[:recipient_nbr].to_i
sms[:body_type] = sms[:body_type].to_i
sms[:msg_flags] = sms[:msg_flags].to_i
sms[:msg_status] = sms[:msg_status].to_i
sms[:attachment_nbr] = sms[:attachment_nbr].to_i
sms[:content_length] = sms[:content_length].to_i
sms[:msg_size] = sms[:msg_size].to_i
sms[:folder] = FOLDERS[sms[:folder]]
if sms[:recipient_nbr] > 0
recipients = {}
sms[:recipients].split(";").each_with_index { |var, index| recipients[RECIP_SPEC[index]] = var }
recipients[:id] = recipients[:id].to_i
recipients[:var1] = recipients[:var1].to_i
recipients[:var2] = recipients[:var2].to_i
sms[:recipients] = recipients
end
sms
end
end
def sort_messages
@messages = @messages.sort { |a, b| a[:delivery_time] <=> b[:delivery_time] }
@by_folder = {}
@messages.each do |sms|
@by_folder[sms[:folder]] = [] unless @by_folder[sms[:folder]]
@by_folder[sms[:folder]] << sms
end
@by_name = {}
@messages.each do |sms|
if sms[:recipient_nbr] > 0
if sms[:recipients][:name] != ""
name = sms[:recipients][:name]
else
name = sms[:recipients][:phone]
end
else
if sms[:sender_name] != ""
name = sms[:sender_name]
else
name = get_number_from_address(sms[:sender_address])
end
end
@by_name[name] = [] unless @by_name[name]
@by_name[name] << sms
end
@by_number = {}
@messages.each do |sms|
if sms[:recipient_nbr] > 0
name = sms[:recipients][:phone]
else
name = get_number_from_address(sms[:sender_address])
end
@by_number[name] = [] unless @by_number[name]
@by_number[name] << sms
end
end
def get_number_from_address(address)
if address =~ /^(\+?\d+)$/
return address
elsif address =~ /\<(\+?\d+)\>/
return $1
else
return false
end
end
end
if $0 == __FILE__
require 'fileutils'
dir = "./messages"
my_name = "yourname"
sms = SMSConverter.new(ARGV[0])
FileUtils.mkdir_p(dir)
sms.by_name.each { |name, messages|
filename = File.join(dir, "#{name}.html")
f = File.open(filename, "w")
f << "<html><body>"
messages.each { |sms|
sent = sms[:recipient_nbr] > 0
message = sms[:subject]
f << "<b>--- #{sent ? my_name : name} (#{sms[:delivery_time].strftime("%H:%M:%S, %a %d-%b-%Y")}) ---</b><br/>"
f << "<pre>#{message.strip}</pre><br/><br/>"
}
f << "</body></html>"
f.close
}
end
I'm a little new to this, but am really interested.
I installed Ruby and then created your ruby script. I then run from command prompt:
convertsms.rb pim.vol convertedsms.htm
but I get the following error. What have I done wrong?
C:\Users\mjt\Desktop>convertsms.rb pim.vol convertedsms.htm
C:/Users/mjt/Desktop/convertsms.rb:67:in `raw2array': undefined method `each_cha
r' for #<String:0x24ee9d4> (NoMethodError)
from C:/Users/mjt/Desktop/convertsms.rb:57:in `initialize'
from C:/Users/mjt/Desktop/convertsms.rb:199:in `new'
from C:/Users/mjt/Desktop/convertsms.rb:199
I'm just supposed to run it on a copy of my pim.vol correct?
Thanks!
You have to install pimbackup on your phone, make a non-binary backup. Download the backup to your computer, unzip it, and run this script on the msgs_<date>.csm file. This script will then create a folder called messages and store all the messages per user in it.
ChaosR said:
You have to install pimbackup on your phone, make a non-binary backup. Download the backup to your computer, unzip it, and run this script on the msgs_<date>.csm file. This script will then create a folder called messages and store all the messages per user in it.
Click to expand...
Click to collapse
Ok, I installed pim backup backed up the messages, copied the file to my computer, extracted the csm file and the following happened when I tried to run it.
C:\Users\mjt\Desktop>ruby convertsms.rb msgs.csm
convertsms.rb:67:in `raw2array': undefined method `each_char' for #<String:0x33e
94c> (NoMethodError)
from convertsms.rb:57:in `initialize'
from convertsms.rb:199:in `new'
from convertsms.rb:199
Thanks!
Heh, it seems on Windows you need to include jcode for each_char to work. Put the new code in. Cheers.
how to convert the binary backup to a non binary backup? other than restoring and backing up.
Relaying SMS
Would it be possible to relay the SMS to another phone when backing up, perhaps as a transfer operation, or by sending SMS via a webservice?