2010-12-05

Resolve Symantec End Point v11 database can't start problem

Problem:
Failed to start this service "symantec embeded database".
Error in event log:
The description for Event ID ( 1 ) in Source ( ASA 9.0 ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: ASANYs_sem5, Database cannot be started -- sem5.log is an invalid transaction log.

Solution:
Repaired SEP db by following this post:
http://98.129.119.162/connect/ja/forums/symantec-embedded-database-not-starting

1.Renamge sem5.log to sem5.log.old
2.run C:\Program Files\Symantec\Symantec Endpoint Protection Manager\ASA\win32\dbsrv9.exe with below settings:
server name: server
db path:C:\Program Files\Symantec\Symantec Endpoint Protection Manager\ASA\win32\sem5.db
option: -f
 
 
How to reset password for SEP server console:
run this script:

C:\Program Files\Symantec\Symantec Endpoint Protection Manager\Tools\resetpass.bat

How to more easily search the Configuration Manager documentation library online

How to more easily search the Configuration Manager documentation library online


http://blogs.technet.com/b/wemd_ua_-_sms_writing_team/archive/2007/11/07/how-to-more-easily-search-the-configuration-manager-documentation-library-online.aspx

2010-11-23

FAQs on SMS/SCCM/MDT

FAQs on SMS/SCCM/MDT
http://eskonr.wordpress.com/faqs-on-smssccmmdt/

All about Configration Manager 2007 & SMS 2003

http://paddymaddy.blogspot.com/search?updated-min=2010-01-01T00%3A00%3A00-08%3A00&updated-max=2011-01-01T00%3A00%3A00-08%3A00&max-results=50

SMS 2003: Basic Client Side Software Distribution Troubleshooting

SMS 2003: Basic Client Side Software Distribution Troubleshooting

http://blogs.technet.com/b/smsandmom/archive/2008/01/23/sms-2003-basic-client-side-software-distribution-troubleshooting.aspx

Troubleshooting

Is the client getting the advertisement policy?

Check the ccmexec.log for the advertisementID.

If the advertisementID is not in the ccmexec.log, check the ccmexec.log for errors communicating with the Management Point.

If the ccmexec.log shows errors communicating with the MP, follow basic connectivity tests such as pinging the MP by IP address, pinging the MP by hostname

and telnetting to port 80 on the MP. If these all succeed, also verify that the Default Web Site in IIS on the MP is bound to port 80.

If the ccmexec.log indicates the client can communicate with the MP, check the Management Point to see if the policy exists there using MPGetPolicy.exe.

If the policy is not on the MP, ensure communications from the site server to the Management Point.


SMS/SCCM Clients installation Troubleshooting Check list
http://wmug.co.uk/blogs/eskonr/archive/2010/11/16/smssccm_2D00_clients_2D00_installation_2D00_troubleshooting_2D00_check_2D00_list.aspx

2010-10-18

Setting the Default Process Security Level Using VBScript
http://msdn.microsoft.com/en-us/library/aa393618(VS.85).aspx


Scripts to manage Services
http://www.activxperts.com/activmonitor/windowsmanagement/adminscripts/services/
Check status of services
start a service without admin rights
stop a service without admin rights

WMI book by Ed Wilson

Windows PowerShell(TM) Scripting Guide Download Ebook
Microsoft Windows Scripting with WMI: Self-Paced Learning Guide (Self Paced Learning Guide)

2010-09-05

online document collaboration tool

5 Ways to Collaborate on Documents Online in Real Time
http://mashable.com/2009/02/21/online-document-collaboration/

http://www.weboffice.com/
Work more easily with coworkers, clients, and vendors in a WebOffice. Share documents, coordinate calendars, hold web meetings, manage tasks, build web databases, follow discussions, make announcements and run your business on the web. You can control access to sensitive files while allowing guests to view public ones, take polls, and manage expense reports. Customize your WebOffice with your company logo to create a branded WebOffice.
Hosted Collaboration and Document Management
http://www.microsoft.com/hosting/en/us/catalogs/hosted-collaboration.aspx


Fully Managed Hosting Solutions Including Exchange, SharePoint, Project And CRM
http://www.microsoft.com/hosting/en/us/catalogs/hosted-collaboration-details.aspx?solutionid=88ef642b-c4f1-4014-a2d5-c0c4b74e3d1f

Hyper-V Integration Services Requires a Newer Version of windows

On Hyper-v guest vm, you got below error when trying to install "intergration services":
Hyper-V Integration Services Requires a Newer Version of windows

It can be fixed by install latest service pack.
Check out this post  for more information:
http://www.virtualizationadmin.com/articles-tutorials/microsoft-hyper-v-articles/installation-and-deployment/hyper-v-integration-newer-version-windows-vista.html

2010-09-03

convert vmware server 1.0 virtual machine to hyper-v format

http://social.technet.microsoft.com/Forums/en-US/winserverhyperv/thread/ef8c12f7-c45d-442e-9a30-c43cd87df3b3

duplicate name in domain problem

Unable to Logon to Windows 2003 Domain Due to Windows Cannot Connect to the Domain Error
http://www.petri.co.il/windows_cannot_connect_to_the_domain_error.htm


Duplicate computer name prevents Active Directory domain logon
http://www.markwilson.co.uk/blog/2007/03/duplicate-computer-name-prevents-active-directory-domain-logon.htm

2010-09-01

online diagraming and collaboration tool

http://creately.com/
Online diagraming & collaboration
Flowcharts, wireframes, mindmaps, UML & more
Intutive & powerful, built for teams

Pro: $10/per month
Team: $8/per mon  per user
Public: free. 5 diagrams, 2 collaborations, 1 project


Top 10 Flowchart Ideas for your Small Business
http://creately.posterous.com/?tag=onlinecollaboration

2010-08-28

MDT 2008/2010 部署windows 资料汇总

Deploying Windows 7
by Mitch Tulloch
http://www.windowsnetworking.com/articles_tutorials/Deploying-Windows-7-Part1.html
Windows 7 deployment series covers MDT 2010, AIK etc

ZeroTouch for MDT 2010 without SCCM!
http://www.ithastobecool.com/2009/08/17/zerotouch-for-mdt-2010-without-sccm/

MDT2008 部署杂谈4——LTI和ZTI
http://xmuxsp.blog.51cto.com/144876/99281
讨论LTI和ZTI的区别

Deploy Windows Using Windows Deployment Services
http://technet.microsoft.com/en-us/library/dd744343(WS.10).aspx

MDT 2010 and deployment from a USB key
http://www.cluberti.com/blog/2009/08/10/mdt-2010-and-deployment-from-a-usb-key/


Installing Windows 7 – MDT 2010 Part 1
http://www.learninggateway.net/blogs/ictforeducation/archive/2009/10/02/installing-windows-7-mdt-2010-part-1.aspx

什么是商业客户端部署(BDD)?
http://jary3000.blog.51cto.com/610705/131637
回顾bdd 2.0, bdd 2.5, bdd 2007的历史,以及新版BDD-> MDT2008的介绍

MDT2008操作手册图文版-2
http://hi.baidu.com/popweb/blog/item/05134038c002222996ddd810.html
MDT2008操作手册图文版-2
http://hi.baidu.com/popweb/blog/item/480781c248c961110ff47711.html
MDT2008操作手册图文版-3
http://hi.baidu.com/popweb/blog/item/e7ab3a3097f30b93a8018e12.html

利用MDT2010部署windows 7
http://siage1979.spaces.live.com/blog/cns!4BAF75E03B4EA23D!776.entry?sa=927594508
MDT 2010全自动部署Windows 7
http://www.overmcse.com/openlab/forums/threads/699.aspx
MDT 2010部署Windows 7
http://lzy821218.blog.51cto.com/209800/342219
Windows 7 大量部署 MDT 2010 Step By Step
http://technet.microsoft.com/zh-tw/ee791719.aspx

Collection 6294: Planning and Managing Windows 7 Desktop Deployments and Environments

https://www.microsoftelearning.com/eLearning/offerDetail.aspx?offerPriceId=279656

Born To Learn Certification Final3
http://www.slideshare.net/slr1966/born-to-learn-certification-final
ppt for the path of all kinds of microsoft learning certifications

2010-08-10

use Access database Transform statement to create crosstab query

What is a CrossTab Query?
http://www.paragoncorporation.com/ArticleDetail.aspx?ArticleID=25


Access SQL TRANSFORM Statement
http://ewbi.blogs.com/develops/2005/01/access_sql_tran.html

Hyper-V, HPC, vCPU, physical CPU core allocating

Need your help on allocating CPU
http://social.technet.microsoft.com/Forums/en/winserverhyperv/thread/eafd3f08-c91f-4955-a4cc-5c12ae73bca9

Requirements and Limits for Virtual Machines and Hyper-V in Windows Server 2008 R2
http://technet.microsoft.com/en-us/library/ee405267%28WS.10%29.aspx

Setup for Failover Clustering and Microsoft Cluster Service
http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf

here is how to setup a cluster. You can check your setip to see if it cose.
http://blogs.msdn.com/clustering/archive/2008/01/18/7151154.aspx

HPC Computers - What advantage?
http://www.experts-exchange.com/Hardware/Servers/Q_24206864.html?sfQueryTermInfo=1+10+30+hpc+microsoft

2010-08-08

VMware, Xenserver 5.5 and Hyper-V R2, Microsoft HPC

Interested in High Performance computing? Maybe you should be?
http://blogs.msdn.com/b/ericnel/archive/2008/01/22/interested-in-high-performance-computing-maybe-you-should-be.aspx

VMware, Xenserver 5.5 and Hyper-V R2 Experience and opinions
http://blog.simonmurrayinc.com/post/VMware-Xenserver-55-and-Hyper-V-R2-Experience-and-opinions.aspx


VMware、Xen与Microsoft虚拟化技术解析
http://www.cnsoftnews.com/show_news.asp?newsid=15149

2010-07-29

command line to check remote share folder permission

User MS rmtshare.exe to check remote share folder permissions
Microsoft has placed the RMTShare.exe program on their FTP site at ftp://ftp.microsoft.com/bussys/winnt/winnt-public/reskit/nt40/i386/RMTSHAR.EXE

After downloading RMTSHAR.EXE, double-click it to extract the Readme.txt and Rmtshare.exe files. Copy Rmtshare.exe to a folder in your path.
Syntax:
RMTSHARE \\server
                      \\server\sharename
 
Windows shares and NTFS file permissions, show/create/modify

http://copenhagens.blogspot.com/2007/11/windows-shares-and-share-permissions.html

2010-07-06

mplist procedure reports error but mpcert and mplist1 seems ok

Many people run through a problem with a MP on a primary site after upgrade from SMS 2003 SP2. The mpcontrol manager states that the MP is not responding to HTTP requests. "Internal Server Error 500".

When testing MP service with the following:
http://servername/sms_mp/.sms_aut?MPCERT Works
http://servername/sms_mp/.sms_aut?MPLIST Fails with "Internal Server Error 500"
http://servername/sms_mp/.sms_aut?MPLIST1 Works

There are a several queries you can execute against the SMS database to confirm this issue:
exec mp_getmplistforsite 'sitecode'
Select * from sites
exec mp_getlistofmpsinsite 'sitecode','0'

Open SQL Management Studio, go to:
*servername*\Databases\*sms/sccm database*\Programmability\Stored Procedures\dbo.MP_GetListOfMPsInSite
Click "new query" and run the following query:
exec MP_GetListOfMPsInSite "Central Site code","0"
This should return you a list of all MP's.
Now check the 4th column where it says "Capabilities" all MP's should have the following value there:


If there are sites that have no (blank) value or a NULL value, these are the cause of your HTTP 500 error, all MPcontrol.log files on all your secondary sites and your central site will return that HTTP 500 error.

A full reinstall of a site could resolve this issue.

How to quickly test to see if SCCM MP is responding to http or not

We are using SCCM OSD to deploy Vista workstations and SMP is used for USMT.
From time to time the build failed due to MP/SMP stopped responding.

Seeing error in SCCM system status:
SMP Control Manager detected SMP is not responding to HTTP requests. The http status code and text is 500, Internal Server Error.
Or:
MP Control Manager detected MP is not responding to HTTP requests. The http error is 12029.

Possible cause: DMP service is not started or not responding on all DMP physical machines.
Solution: Manually restart the SMS Agent Host service on the DMP.

Possible cause: IIS service is not responding.
Solution: Manually restart the W3SVC service on the MP.

For more information, refer to Microsoft Knowledge Base article 838891

You can find some details of the problem from this server log file: mpcontrol.log

Apart from the above mentioned resolution on how to fix it, you can do a quick check to see if MP server is responding to http or not:
http://MP-server-name:portnumber/sms_mp/.sms_aut?MPcert
http://MP-server-name:portnumber/sms_mp/.sms_aut?MPlist
http://MP-server-name:portnumber/sms_mp/.sms_aut?MPlist1
where the "portnumber" is the http port number configured in IIS for your MP server. By default it's "80" but it could be changed to something else by your administrator. You need to find it out first from IIS configuration.

Related information:
Troubleshooting Management Point Issue : Steps to be taken
http://systemcentersupport.blogspot.com/2010/01/troubleshooting-management-point-issue.html

Chris Stauffer posted an updated version of his Client Health Script, version 1.7.
Check it out here:
http://myitforum.com/cs2/blogs/cstauffer/archive/2009/12/18/sccm-sp2-health-check-startup-script-1-7.aspx

2010-07-04

Outlook sending / receiving duplicate email problem

An good post discussing this issue:
http://www.anti-dupe.com/products/prevent_outlook_duplicate.aspx

Other things you can try:
To stop receiving duplicate e-mails, check the following:
1.Check the Rules that you have configured to be sure that copies are not being made to the Inbox,
2.Ensure that all your rules end in "Stop Processing" actions.
3.Check the windows task manager to ensure that there is only one instance of Outlook running. If they are two instances of outlook.exe running, it may produce two messages arriving at the same time.
4.Delete or remove all your e-mail accounts and recreate them.
I5.f your running Outlook XP, ensure that you have service pack 2 or later. If you need to upgrade, just go to Microsoft Product Updates.
6.If you have two different POP3 e-mail accounts set up in your outlook, then you might receive duplicate e-mails. Check this article on Microsoft's website which explains the problem.
http://support.microsoft.com/?kbid=284404.




To prevent sending duplicate e-mails, check the following:
The reason for your PC sending multiple email messages might due to an anti-virus that is configured to check Outlook emails. When the Anti-Virus scans your outgoing emails, it might send it out twice. You can either change the settings on your anti-virus or refer your anti-virus manual for other alternatives.

SCCM OSD basic troubleshooting guide

SCCM OSD basic troubleshooting guide
http://www.network-tutorial.com/sccm-osd-basic-troubleshooting/

ConfigMgr 2007: OSD deployment errors out within a few seconds after WinPE loads and then automatically reboots
http://blogs.technet.com/b/smsandmom/archive/2008/08/26/configmgr-2007-osd-deployment-errors-out-within-a-few-seconds-after-winpe-loads-and-then-automatically-reboots.aspx
Problem:
Your OSD failed and found error from smsts.log:
"Failed to connect to "\\servername.com\SMSPKGC$\10000001" (86) TSMBootstrap 1/9/2009 1:45:57 PM 1460 (0x05B4)"



Solution:
code "86" means "The specified network password is not correct." So double check the password of your network access account.

2010-06-25

how to convert WQL to SQL for a SCCM or sms query

smsprov.log - records WMI provider access to the site database

this is a server log and can be found from the site server:
sms\logs

open smsprov.log
excute your query
you should be able to see the query execution logged in the smsprov.log. Once this has happened, pause the log file so it does not scroll away on you.
look for the two lines starting with execute wql= and execute sql=,
copy the text out of the bottom pane of the log viewer and paste it into your web report.

2010-06-22

Installing ESX 4.0 and vCenter 4.0 best practices

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1009080

How to relocate the SQL database that is used by VirtualCenter.

How to relocate the SQL database that is used by VirtualCenter.
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=7960893

To move SQL Server databases which are used by VirtualCenter, to a new location.

1.Stop the VMware VirtualCenter Server and VMware Update Manager Service.
http://kb.vmware.com/kb/1003895
2.Migrate the databases according to Microsoft's How to move SQL Server databases to a new location by using Detach and Attach functions in SQL Server.
http://support.microsoft.com/kb/224071/en-us
3.Verify the Datasource (DSN) in the ODBC Administrator to reflect any changes made.
4.Update the login credentials that VirtualCenter uses to connect to the database.
See Modifying the username and password VirtualCenter uses to connect to the database server in "Troubleshooting the database data source used by VirtualCenter Server (1003928)".
http://kb.vmware.com/kb/1003895
5.Recreate SQL Agent rollup jobs. Detaching, attaching, importing and restoring a database to a newer version of SQL Server does not automatically recreate these jobs.
6.Start the VMware VirtualCenter Server and VMware Update Manager Service.

Migrating vCenter Server to a different host machine

Migrating vCenter Server to a different host machine
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=5850444

Summarized steps:
1.Shutdown the vCenter Server service.
2.Take a backup of the SQL database.
3.If the SQL database is also being moved, create a second instance of your database and use the vendor's tools to migrate the data.
4.Create the appropriate System DSN connections on the new vCenter Server host.
5.Begin the installation of the vCenter Server software on the new server. If you are installing vCenter Server in a virtual machine, see the Technical Resource Center for guidelines for deploying vCenter in a virtual machine, including sizing, installation, functionality, and configuration of VMware High Availability (HA).
6.When prompted, select Use existing database, and provide the correct credentials to that database.
7.When prompted, select to not re-initialize the data, as this erases all your inventory data.
8.Reboot the machine once the installation is finished.
9.When you first start the vCenter Server Client, it may ask for licenses. Configure the licenses as you had previously in your environment. For more information about licensing for ESX hosts, see the Installation Guide for your version of ESX. For more information about licensing for ESXi hosts, see the Setup Guide for your version of ESXi. You are now able to see the same settings and configuration details.
10.If the IP address of the new vCenter Server has changed, your ESX hosts must be made aware of that change, otherwise the ESX hosts will continue to send their heartbeats to the original IP address of vCenter Server and appear as Not Responding or Disconnected.
11.Confirm that your SQL Agent rollup jobs are present. Detaching/attaching, importing, or restoring a database to a newer SQL server does not recreate these jobs. If these jobs are not present, there are problems viewing performance data and the database begins increasing in size.
12.If vCenter Server is moved to another server with a fresh installation, the SSL certificates change and the ESX hosts show as disconnected within vSphere Client connected to vCenter Server. Right-click on the disconnected hosts and choose Connect, then provide the root login credentials and follow the prompts.

Install VMware virtual center 2.5 on windows 2008 server

Officially virtual center 2.5 doesn't support win2008, but people have managed to do it. Check this link out:
http://communities.vmware.com/message/1033321


How to install VirtualCenter on Windows Server 2008?
http://communities.vmware.com/message/952502

2010-06-13

asp.net resources -Microsoft official video, ebook and articles

What is ASP.NET?
http://www.asp.net/general/videos/what-is-asp-net
Getting start with ASP.NET
http://www.asp.net/get-started
How to Install ASP.NET and Tools

http://www.asp.net/general/videos/how-to-install-asp-net-and-tools


Fundamentals of ASP.NET Web Forms (135 video clips)
http://www.asp.net/web-forms/fundamentals
There are several topics with free download clips in WMV format and WMA format for iphone/ipod. Details as below:
Topic: Getting Started with ASP.NET 3.5 and Visual Web Developer 2008 Express
Number of video clips: 16
 
Topic: TailSpin SpyWorks Sample Application

Number of video clips: 5

Topic: Master Pages
Number of video clips: 10

Topic: ASP.NET 3.5
Number of video clips: 26

Topic: How Do I?
Number of video clips: 88


Related downloading:
If you are interested in ASP.NET MVC, here are the videos:
ASP.NET MVC: Total Control and Standards Friendly
http://www.asp.net/mvc

800+ hours video download:
http://idealprogrammer.com/
http://idealprogrammer.com/languages/asp/essential-aspnet-15-free-one-hour-videos-from-fritz-onion/
ADO.NET video:
http://idealprogrammer.com/languages/visual-basic-vbnet/adonet-step-by-step-16-free-one-hour-videos/

Articles:
Data Access with ADO.NET - Part 1
http://www.asp101.com/articles/jay/adodotnet/default.asp

Visual studio express 2005 guided tour:
http://www.asp.net/guided-tour/default.aspx

Working with Data in ASP.NET 2.0
http://msdn.microsoft.com/en-us/library/aa581776.aspx
http://weblogs.asp.net/scottgu/archive/2007/04/14/working-with-data-in-asp-net-2-0.aspx


【翻译】Scott Mitchell的ASP.NET2.0数据教程中文版索引
http://www.cnblogs.com/eddie005/archive/2006/08/01/workingwithdata_aspnet2.html

2010-06-10

protect your vbscript

Encode vbscript to VNE file:
screnc.exe

convert vbscript to exe:
http://www.vbs2exe.com/overview.html

Decode all files encoded (original version) with screnc.exe
http://www.interclasse.com/scripts/decovbe.php

2010-06-07

Setup group policy for outlook 2007

Establishing Group Policies for Outlook 2007


http://www.petri.co.il/establishing-group-policies-for-outlook-2007.htm

By default, the group policy does not contain any Outlook 2007 specific settings that you can use to lock down Outlook’s configuration settings. Microsoft does however offer a set of administrative templates for Office 2007 (of which Outlook is a part) that you can download for free from Microsoft's site. You can then use these administrative templates to add Outlook specific settings to the group policy.

Download outlook 2007 administrative templates:
http://www.microsoft.com/downloads/thankyou.aspx?familyId=92d8519a-e143-4aee-8f7a-e4bbaeba13e7&displayLang=en

2010-05-19

Exchange 2010 Cmdlets- Import-Mailbox

Exchange 2010 Cmdlets- Import-Mailbox
http://technet.microsoft.com/en-us/library/bb629586.aspx

To import data from a .pst file, you must run the Import-Mailbox cmdlet against a computer running Microsoft Exchange Server 2010 that has the 64-bit version of Microsoft Outlook 2010 installed. We recommend that you run the command on a dedicated Exchange server that doesn't have any mailboxes.


You can import data from a .pst file only to a mailbox that's on an Exchange 2010 server that has the Mailbox server role installed by using the Import-Mailbox cmdlet. To import data from a .pst file to a mailbox on an Exchange Server 2007 server, use the Exchange 2007 version of the Import-Mailbox cmdlet. To import data from a .pst file to a mailbox that's on an Exchange Server 2003 server, you must use the Microsoft Exchange Server Mailbox Merge wizard (ExMerge.exe).

You can't import data by using the Import-Mailbox cmdlet from a .pst file to a mailbox that's in a recovery database.

You can't import data by using the Import-Mailbox cmdlet into a public folder database.

You need to be assigned permissions before you can run this cmdlet. Although all parameters for this cmdlet are listed in this topic, you may not have access to some parameters if they're not included in the permissions assigned to you. To see what permissions you need, see the "Import\Export mailbox" entry in the Mailbox Permissions topic.

Syntax :

import-Mailbox [-Identity ] -PSTFolderPath [-AllContentKeywords ] [-AllowDuplicates ] [-AttachmentFilenames ] [-BadItemLimit ] [-Confirm []] [-ContentKeywords ] [-EndDate ] [-ExcludeFolders ] [-GlobalCatalog ] [-IncludeAssociatedMessages ] [-IncludeFolders ] [-Locale ] [-MaxThreads ] [-RecipientKeywords ] [-SenderKeywords ] [-StartDate ] [-SubjectKeywords ] [-ValidateOnly ] [-WhatIf []]



Other readings
Cmdlet Overview
http://msdn.microsoft.com/en-us/library/ms714395(VS.85).aspx

Cmdlets: Exchange 2010 Help
http://technet.microsoft.com/en-us/library/aa996589.aspx

Exchange 2010 Management Architecture – Using a single machine to manage multiple Exchange 2010 Organizations
http://www.msexchange.org/articles_tutorials/exchange-server-2010/management-administration/management-administration/exchange-2010-management-architecture-single-machine-manage-multiple-exchange-2010-organizations.html

Good-to-know Powershell CMDLETS & Procedures
http://exchangeserverinfo.com/2009/09/02/goodtoknow-powershell-cmdlets--procedures.aspx

Migrate MDaemon email to Exchange 2007/2010

How to migrate from third-party mail servers to Exchange Server 2003 and 2007.
For example, a migration from MDaemon Mail Server to Exchange Server.
Basically the options are: Single Step (also called Big Bang Migration) or using Coexistence
The Big Bang Migration:
All users are moved at the same time, usually during the weekend, and on the first day of the new Exchange Server the Help Desk team is swamped by incidents from the new users.
The coexistence scenario:
Both systems are kept up and running, sharing information and a group of users is migrated at a time. In this scenario, the process is more complex and requires some efforts to make sure that both users (migrated and non-migrated) are able to exchange messages and use both mail systems during the transition. In a coexistence scenario, all steps should be done seamlessly from the user point of view.

Detailed step by step guide for two different scenarios:
Moving from a Linux Mail Server and peer-to-peer network to Exchange Server 2007 (Part 1)
Totally 4 parts following below link:
http://www.msexchange.org/articles_tutorials/exchange-server-2007/migration-deployment/moving-linux-mail-server-p2p-network-exchange-server-2007-part1.html
 
Moving from MDaemon to Exchange Server 2003/2007 (Part 1)
Totally 7 parts following below link:
http://www.msexchange.org/articles_tutorials/exchange-server-2007/migration-deployment/moving-mdaemon-exchange-server-2003-2007-part1.html

2010-05-16

some VBscript resources

http://ezinearticles.com/?expert=Duane_Hennessy
Duane Hennessy - EzineArticles.com Expert Author
This guy is doing some good jobs of scripting.
Below are some handy tips.

VBScript - Printing Results to the Commandline for Flexibility
http://ezinearticles.com/?VBScript---Printing-Results-to-the-Commandline-for-Flexibility&id=536540

Use Flowcharts to Design Your Code
http://ezinearticles.com/?Use-Flowcharts-to-Design-Your-Code&id=216718

2010-05-12

Javascript regular expressions

Regular expressions

Regular Expressions - User guide
http://www.zytrax.com/tech/web/regex.htm

JavaScript RegExp Example: Regular Expression Tester
http://www.regular-expressions.info/javascriptexample.html

How To: Use Regular Expressions to Constrain Input in ASP.NET

http://msdn.microsoft.com/en-us/library/ff650303.aspx


Form Validation with JavaScript Regular Expressions (Part 2)
http://www.devarticles.com/c/a/JavaScript/Form-Validation-with-JavaScript-Regular-Expressions-Part-2/

javascript正则表达式验证非法字符
http://www.cnblogs.com/zbnet/archive/2006/12/27/605108.html

在ASP中用“正则表达式对象”来校验数据的合法性
http://www.xmsc.com.cn/InfoView/Article_2839.html

正则表达式收集
http://ccap168.cn/news/20094306041.htm

asp 实现检测字符串是否为纯字母和数字组合的函数
http://kingoa.net/WEBPROGRAM/ASP/2010/0404/14715.html

正则表达式regular expression详述(一)
http://www.xmsc.com.cn/InfoView/Article_2838.html

线对你编写的正则表达式regex进行测试的网络工具,无须下载和安装,能够有效的返回匹配的结果
http://www.zhongguosou.com/computer_question_tools/test_regex.aspx

2010-05-10

some salesforce web to lead development resources

How to obtain a field ID
http://salesforce.phollaio.com/2007/04/02/how_to_obtain_a_field_id/
You can find a list of all SFDC standard Fields and also some information about custom fields.
Very handy and helpful

Validation Rule formulas: Part 1
http://salesforce.phollaio.com/2007/01/08/validation_rule_formulas/

Validation Rule formulas: Part 2
http://salesforce.phollaio.com/2007/01/10/validation_rule_formulas_part_2/

Play with Custom Links: Part 1
http://salesforce.phollaio.com/2007/01/16/play_with_custom_links/

Play with Custom Links: Part 2
http://salesforce.phollaio.com/2007/01/31/play_with_custom_links_part_2/

sfdc-web2anything
http://salesforce.phollaio.com/2008/11/26/sfdc-web2anything/

Introducing an open source object "sfdc-web2anything "
http://code.google.com/p/sfdc-web2anything/

2010-05-09

Install ESXi on desktop issues

Install ESXi 3.5 /4.0 on a desktop machine.
The key part of this is to check VMware whitebox list to see if your hardware is on the supported liet or not.
Google "ESXi on a whitebox".

How to copy (upload) file to ESXi server?
You can now copy files to and from the datastores with the Browse Datastore function in the VI client. On the Sumary or Configuration \ Storage page for the host, right click on the datastore and select Browse Datastore. On the Browse Datastore window you'll see icons to upload / download and move files.

How to enable SSH?
ESXi shipped with SSH but by default is disabled. You can enable it manually but please note this is not supported.
1.Logon to ESXi console unsupported mode
At the console of the ESXi host, press ALT-F1 to access the console window.
Enter unsupported in the console and then press Enter. You will not see the text you type in.
If you typed in unsupported correctly, you will see the Tech Support Mode warning and a password prompt. Enter the password for the root login.
2.Modify /etc/inetd.conf to clear the "#" that begin with #ssh and save.
3.Restart management service
command: /sbin/services.sh restart

Find more details from this link: 
http://www.vm-help.com/esx/esx3i/ESXi_enable_SSH.php

And this one: How to access the VMware ESXi hidden console
http://www.virtualizationadmin.com/articles-tutorials/vmware-esx-articles/general/how-to-access-the-vmware-esxi-hidden-console.html


How to import existing virtual machine created by VMware server v1.02 to ESXi?
Use the free VMware vCenter Converter (4.0):
http://www.vmware.com/support/converter/doc/releasenotes_conv401.html

locate source virtual machine file
setup destination: IP of ESXi 4.0

2010-05-06

Where to clean temporary Internet files on Windows 7/Vista

Temporary Internet Files

http://www.milincorporated.com/a-temporary-internet-files.html#ch2

Location of temp internet files

On Windows 7 or Windows Vista
C:\Users\\AppData\Local\Microsoft\Windows\Temporary Internet Files\
C:\Users\\AppData\Local\Microsoft\Windows\Temporary Internet Files\Low\

On Windows XP or Windows 2000
C:\Documents and Settings\\Local Settings\Temporary Internet Files\

On Windows Me, Windows 98, Windows NT or Windows 95
C:\Windows\Temporary Internet Files\
C:\Windows\Profiles\\Temporary Internet Files\


Delete index.dat files
http://www.milincorporated.com/a_indexdat.html

What are the Index.dat files?

The Index.dat files are used by Internet Explorer and Windows to store history, Internet cache, cookies, UserData records and other information about your PC activities. If the information is too big to fit in the index.dat files themselves, it is placed in external files and the index.dat file serves as index or table of contents, which helps the Internet Explorer to find the full information.

Although some of their functions are useful, they are dangerous privacy threat - any person with even little knowledge about index.dat files locations and structure can see history of almost all of your computer activities. Index.dat files are not the only privacy threat but they are the most obscure and dangerous one because they are hard to find and even harder to delete. In fact, in most cases it is impossible to delete Index.dat files manually because Windows keeps them open all the time.


Where are Index.dat files located?

On Windows XP or Windows 2000
C:\Documents and Settings\\Cookies\index.dat
C:\Documents and Settings\\Local Settings\History\History.IE5\index.dat
C:\Documents and Settings\\Local Settings\History\History.IE5\MSHistXXXXXXXXXXX\index.dat
C:\Documents and Settings\\Local Settings\Temporary Internet Files\Content.IE5\index.dat
C:\Documents and Settings\\UserData\index.dat

On Windows 7 or Windows Vista
C:\Users\\Roaming\Microsoft\Windows\Cookies\index.dat
C:\Users\\Roaming\Microsoft\Windows\Cookies\Low\index.dat
C:\Users\\Local\Microsoft\Windows\History\History.IE5\index.dat
C:\Users\\Local\Microsoft\Windows\History\History.IE5\Low\index.dat
C:\Users\\Local\Microsoft\Windows\History\History.IE5\index.dat\MSHistXXXXXXXXXXX\index.dat
C:\Users\\Local\Microsoft\Windows\History\History.IE5\Low\index.dat\MSHistXXXXXXXXXXX\index.dat
C:\Users\\Local\Microsoft\Windows\Temporary Internet Files\Content.IE5\index.dat
C:\Users\\Local\Microsoft\Windows\Temporary Internet Files\Low\Content.IE5index.dat
C:\Users\\Roaming\Microsoft\Internet Explorer\UserData\index.dat
C:\Users\\Roaming\Microsoft\Internet Explorer\UserData\Low\index.dat

Visual studio 2005 compatibility error on Windows 7/Vista

After installed VS 2005, you got warning on windows 7 /Vista:
"This problem has known compatibility issues......"

Here is the solution from Microsoft:

Visual Studio on Windows Vista and Windows 7
http://msdn.microsoft.com/en-us/vstudio/aa948853.aspx

Visual Studio 2005 is supported on Windows 7 with the same limitations described in this article and the related pages. To use Visual Studio 2005 on Windows 7 you will need to install both Visual Studio 2005 Service Pack 1 and the Visual Studio 2005 Service Pack 1 Update for Windows Vista.


The release of the Windows Vista operating system represents a significant opportunity for developers to build the next generation of applications that deliver compelling user experiences. We want to help you take advantage of this opportunity and assist you in developing and delivering Windows Vista based software faster, more cost effectively, and with greater impact than ever before.

During the development of Windows Vista, several key investments were made to vastly improve overall quality, security, and reliability from previous versions of Windows. We’re also testing to ensure that your .NET Framework 1.1 and 2.0 applications will work on Windows Vista so that your existing applications will continue to run as expected.

While we have made tremendous investments in Windows Vista to ensure backwards compatibility, some of the system enhancements, such as User Account Control, changes to the networking stack, and the new graphics model, make Windows Vista behave differently from previous versions of Windows.

The changes impact Visual Studio and thus we're unable to support Visual Studio .NET 2002 or Visual Studio .NET 2003 on Windows Vista.

However, your existing .NET Framework 1.1 and 2.0 based applications will continue to work on Windows Vista, and will be able to take advantage of many of the new features available to Windows Vista applications.

Resources:
Visual Studio 2005 Service Pack 1:
http://www.microsoft.com/downloads/details.aspx?FamilyID=7b0b0339-613a-46e6-ab4d-080d4d4a8c4e&DisplayLang=en

Visual Studio 2005 Service Pack 1 Update for Windows Vista :
http://www.microsoft.com/downloads/details.aspx?FamilyID=90e2942d-3ad1-4873-a2ee-4acc0aace5b6&displaylang=en

Visual Studio 2005 Issues with Vista (Admin)
http://msdn.microsoft.com/en-us/vstudio/aa964140.aspx


Visual Studio .NET 2003 on Vista Issue List
http://msdn.microsoft.com/en-us/vstudio/bb188244.aspx

2010-05-02

shadow protect blue screen issues

Problem 1:


Why I got a blue screen (BSOD) with errir "0x0000007B"

http://www.storagecraft.com/kb/questions.php?questionid=171



Situation:



After performing an HIR restore, user receives a BSOD with the error code 0x0000007B while trying to boot for the first time.



Solution:



This error is caused by a mismatched Storage/RAID Controller Driver. In order to resolve this issue, the proper driver will need to be downloaded from the Hardware/Computer Manufacturer.



Often times these drivers are downloaded as an EXE file and must be extracted before they can be used.



Once the drivers have been obtained, you will then need to boot into the Recovery Environment again and run the HIR Configuration from the Tools Menu.



Select the Drive you are performing the HIR on (This only needs to be done to system volumes)

Select Advanced, then locate your device drivers.

Select Start, then Choose Yes for Troubleshooting Purposes.





Another blue screen issue after restore with different reason:

http://www.storagecraft.com/kb/questions.php?questionid=219







Problem 2:

http://forum.storagecraft.com/Community/forums/p/1083/4870.aspx



I got "An error(0x00000001) occurred Incorrect function when using HIR confirguation.Also after you clear that error message the status bar displays "target is not a support windows volume"



Migrating from one virtual pc to a newer Dell dimension 5100 desktop





Answer:

Target is not a supported windows volume means that you do not have ShadowProtect installed on the OS you are trying to migrate.

You must have the product installed if you plan to use HIR.



So to do a proper HIR, install SP Server Ed on the source server, then reboot into the SP CD environment and do a cold backup, then restore via the SP CD environment on the destination server choosing the HIR checkbox.





SBS & ShadowProtect - Some Hardware Independent Restore considerations

http://blog.mpecsinc.ca/2008/02/sbs-shadowprotect-some-hardware.html





ShadowProtect IT Edition 3.1 - Press F6 to load storage drivers?

http://blog.mpecsinc.ca/2008/02/shadowprotect-it-edition-31-press-f6-to.html



StorageCraft ShadowProtect User Guides

http://www.storagecraft.eu/eu/backup-recovery/support-downloads/user-guides.html

Shadow protect recovery options

Question:
I have Vista Ultimate 32-bit and am running SP 3.0 Desktop.

I want to know which restore options I should use among restore MBR, restore disk signature and restore disk hidden track.

Answer from Official ShadowProtect Help file

" Restore MBR - Restore the master boot record. The master boot record is contained in the first sector of the first physical hard drive. The MBR consists of a master boot program and a partition table that describes the disk partitions. The master boot program looks at the partition table to see which primary partition is active. It then starts the boot program from the boot sector of the active partition. You can restore the MBR from the image file that was saved with the backup image or you can restore an original Windows MBR.

§ Restore disk signature - Restores the original physical disk signature of the hard drive. Disk signatures are included in Windows Server 2003, Windows 2000 Advanced Server, and Windows NT Server 4.0 Enterprise Edition (SP3 and later) and are necessary before the hard drive can be used.

§ Restore Disk Hidden Track - this will restore the first 63 sectors of a drive. Some boot loader applications require this for the system to boot."


Answerer from Nate at SP forum:

http://forum.storagecraft.com/Community/forums/t/146.aspx

If you're restoring the image back to the same disk and partition from which it came, you generally don't need to restore any of those things (you don't need to restore the MBR, or the hidden track sectors, or the disk signature). If you're restoring to a different disk on the same machine, then definitely do NOT restore the disk signature. The decision on restoring the MBR (which restores the MBR code section only) and hidden track sectors is whether or not you have custom MBR code, such as a fully pre-boot disk encryption product, etc. If you just have the standard MBR, then you generally won't need to restore the MBR or hidden track sectors. If you're restoring to a different machine then I generally recommend that you do check all three (restore disk signature, hidden track sectors, and disk signature) as well as check the HIR option during restore.



If you ever boot your restored OS and it comes up to a blank screen (not a blue screen, but a black screen), or gives you any ntldr errors, then just boot your windows install CD and specify that you want to use the Recovery Console and then within the recovery console execute "mbrfix /drive 0 fixmbr" and "fixboot C:"

software for a new installation

http://weblogs.asp.net/rosherove/archive/2007/07/27/essential-software-to-install-on-a-new-computer.aspx

Automatic configuration of Outlook profile when user logins in.

Part 1  for Outlook 2000/ 2003
Create a *.prf file and apply it using a Logon Script.
http://www.outlook-tips.net/howto/prf.htm

Type in %username% for the username.

This way when a user logs into a session it creates their Outllook Profile for them.

Create a custom installation using the resource kit. The custom installation would contain the information from the PRF file mentioned above. The user wouldn't have to type in anything - Outlook would configure automatically based on their domain login information.

You may have to reinstall Outlook/Office to get the custom installation to take correctly, but it will be worth the hassle.


Part 2, for Outlook 2007
About Office Customization Tool (OCT)
You use the Office Customization Tool (OCT) to customize an installation of the 2007 Microsoft Office system. The OCT is part of the Setup program and is the recommended tool for most customizations. You run the OCT by typing setup.exe /admin at the command line. The OCT is available only with volume licensed versions of the 2007 Office system. Office Standard 2007, Office Small Business 2007, Office Professional Plus 2007, and Office Enterprise 2007 are available for purchase through volume licensing.



Creating PRF files by using the Office Customization Tool

A straightforward way to create a PRF file with Office Outlook 2007 profile settings is to customize the settings by using the Office Customization Tool, and then export the settings to a PRF file.

To create a PRF file by using the Office Customization Tool
1.In the Office Customization Tool, on the Outlook: Customize Default User Profile page, select how you want to customize profiles for your users. To specify settings to be included in a PRF file, choose Modify Profile or New Profile, and click Next.
2.On the next three pages, customize profile information such as configuring Microsoft Exchange server connections and adding accounts.
3.On the Outlook: Remove Accounts and Export Settings page, click Export Profile Settings, and when prompted, enter (or browse to) a file name and location.


Applying Outlook user profiles by using a PRF file

You can apply a PRF file in several ways to update Outlook profiles:
Method 1:
Import the PRF file in the Office Customization Tool to specify profile settings in a transform, and then include the transform when you deploy or update Outlook.
Method 2:
Specify the PRF file as a command-line option for Outlook.exe to import a PRF file without prompting the user. Example: outlook.exe /importprf file://server1/share/outlook.prf.
Method 3:
Specify the PRF file as a command-line option for Outlook.exe, but prompt the user before importing the PRF file. Example: outlook.exe /promptimportprf \\localfolder\outlook.prf. If you put the specified PRF file in a shared folder on a network, the settings might not be applied if the file is not found or is not available when Outlook runs.
Method 4:
Configure the registry to trigger Outlook to import the PRF file when Outlook starts up. You can use the Add/Modify Registry Entry page in OCT to deploy these registry key options to your users. You can also use the OCT to distribute the PRF file to users by using the Add/Remove Files page.

1.Delete the following registry key values:
HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Outlook\Setup\First-Run
HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Outlook\Setup\FirstRun

2.In the HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Outlook\Setup subkey, set the value of ImportPRF to a string value that specifies the name and path of the PRF file. For example, set ImportPRF to \\server1\share\outlook.prf


Further reading:
Tech net article: Customize Outlook profiles by using an Outlook Profile (PRF) file
http://technet.microsoft.com/en-us/library/cc179062.aspx

2010-04-19

Need a correct phone jack!

Just bought a wrong cable from online shop again .

I thought it is RJ11 because it is little bit smaller than the normal RJ12 one but I was wrong.
People call it RJ9, RJ10, RJ22 but not RJ11!

http://en.wikipedia.org/wiki/4P4C

0x80070040 Error Code during SCCM OSD.

Problem
Got below errors when doing the OSD:

Connecting to "\\xxxx0000.abc.COM\SMSPKGF$\pkg0009"
Successfully connected to "\\xxxx0000.abc.COM\SMSPKGF$\pkg0009"
Found boot image \\xxxx0000.abc.COM\SMSPKGF$\pkg0009\Boot.pkg0009.wim
Copying boot image locally...
::CopyFileEx( sImageSourcePath, sImageDestPath, CopyProgressRoutine, pProgressData, &pProgressData->bCancel, 0), HRESULT=80070040 (e:\nts_sms_fre\sms\framework\tscore\bootimage.cpp,635)
Unable to copy boot image \\xxxx0000.abc.COM\SMSPKGF$\pkg0009\Boot.pkg0009.wim locally.
The specified network name is no longer available. (Error: 80070040; Source: Windows)
 Failed to stage WinPE. Code(0x80070040)


Solutions
Solution 1 from one of my deployments
Problem fixed after configuring "port fast" on my CISCO switch as it caused delay of DHCP IP address.

Also, it won't hurt if you check the server network settings to ensure teaming configuration is done properly.
Solution 2 from one of my deployments:
Figured out the problem was due to wrong settings on my SCCM server.
The site where I was building the machine is a secondary site and it has incorrect site boundaries configured hence the build process always trying to connect the remote DP to download packages and that caused the error.

Solution 3 from someone:
Unplugged the laptop from netgear hub and plugged it directly into our wall jack and it worked fine.

Solution 4 from someone:
I've seen on some occasions  that the network actually loses connection or fails to get an IP address. usually something to do with Spanning Tree or duplex settings on the switch. I've gotten around this by plugging the system into a switch port that forces duplex (like an IP phone for example).

2010-04-01

部署 Windows Vista 需要了解的十大事项

部署 Windows Vista 需要了解的十大事项
http://kb.cnblogs.com/a/573212/

2010-03-30

How can I connect laptop (VGA) to HD TV

Solution 1:
Use normal VGA cable, if the HD TV has a VGA port.
I am using this method to connect my laptop to the 52'' HDMI TV, the resolution can be set to 1360X768

Solution 2:
If HT TV has only HDMI port, then you need a sort of VGA to HDMI converter box.


But please bear in mind that, the VGA to HDMI cable will not work for this purpose. Here are some reasons:
You can buy a cable with HDMI at one end and VGA at the other. This is not for connecting your computer to your TV to use it as a monitor. It is for connecting your HDMI compatible DVD player/digibox/HDD recorder etc to your TV screen with a VGA input. This is quite common on flat screen TVs nowadays.
It does also carry the sound information from the DVD player (with HDMI output) to the screen (with VGA input).

Although you could physically connect this cable from a computer VGA output to a screen with an HDMI input, it will definitely not work.
This is usually stated in the specs of the VGA-HDMI cables they are selling on ebay.
 

Quality of HDMI cables
Most of the cheaper cables are certified for HDMI 1.2, which uses signals up to 75MHz, which is suitable for 1080i.

If you want 1080p, then you need to look for HDMI 1.3 certified cables (also known as High-Speed or “category 2” cables), in order to carry the 340MHz required for 1080p and increased colour depths/resolutions. You also need these for large cinema display monitors. 
 
Since HDMI is pure digital, there is no big difference between a $100 cable and a $10 one. So you are safe to go cheapest one if you are after a 3m cable, as long as it works.
 
 
More reading:
How to connect PC to HDMI TV
http://www.ehow.com/how_4457043_connect-pc-hdmi-tv.html
 
How to Convert VGA Output to HDMI Input
http://www.ehow.com/how_5801514_convert-vga-output-hdmi-input.html

2010-03-15

一个IT人来谈中国与印度的软件 (转)


   在国观,看见了不少人对比中国和印度软件贴子,发觉大部分都不是IT人经历的人写的,错误百出。所以来写一篇 一个IT人来谈中国与印度软件, 为什么不说 一个IT人来谈中国与印度软件的差距呢? 这样的说法就是根本性的错误,中国软件和印度软件只有差别,要衡量差距,那是关公战秦琼,无从衡量。

  我本人就是从事IT行业的,从业10年。刚开始做ERP两三年,后来从事个人认为是技术和业务要求都是非常高的行业:

   投资管理与证券交易软件。

   天涯股民多,很多人认为证券交易软件就是通达信、大智慧、核新、同花顺,手机炒股,网上交易,电话交易等等,只能算说对了一半,这些都只能算证券交易的外围,所有这些交易方式都连接到证券公司的交易核心程序,最后申报到交易所,我从事的就是 这核心的开发,会和股民用到的所有系统有接口。
  

   接下来开始谈正文:

   一。首先谈盗版

   虽然个人是从事IT行业的,盗版是IT人员最后成为IT民工的重要原因之一,但个人觉得到目前为止盗版对中国的发展还是利大于弊,说到软件盗版,中国人都盗版什么呢?

   1。操作系统 windows ,

   2. 办公软件 oa系统 ,office,Notes,图象处理PS等

   3. 数据库 主要是中小型的数据库(sql server,免费MySql),但大型的oracle等,都是大企业用的,能用的起当然就不缺钱,别人自然能抓到你在用,能找你收钱。

   4。开发工具 c, delphi, .net ,java 我们这些开发软件的公司基本上都没有怎么花钱买开发工具。

   5。企业级商用中间件 (Weblogic ,websphere,Tuxedo)等

   6。其他的通用性应用软件,譬如杀毒,网络安全

   7.个人电脑所使用的软件几乎全是盗版或者免费(免费居多)

   windows,office,影声播放,

   QQ、邮箱、支付宝、淘宝、阿里旺旺、飞信、百度、迅雷、PPS、PPlive、CNTV、360、、翻译软件、通行情软件、
  

   8。中国最大的盗版行业是 游戏,电影
  

   中国的网民从看电影和玩游戏角度来说,是世界上最幸福的,

   我可以肯定的说,中国很多网民看过的美国电影数量都超过不少美国人。。远超其他国家的人

   中国网民庞大,会有一部分人将世界上的优秀的影片引入到到这个体系(世界上最大的局域网)中来

   由于中国的视频共享网站,其供应商都是中国本土的,

   外国只有叫嚷的份,说到处理侵权,实际上能作的事情很少。
  

   不要小看了盗版的作用,它让中国以比较低的成本融入了信息化社会,开阔了视野,这也是为什么中国人对外国人的了解 远胜于外国人对中国人的了解。
  

   二。金山公司不是中国软件业的代表

   大家看清楚了,中国人盗版的行业基本上都是外国的垄断的行业,

   中国人奉行的原则是: 能用假就不用真的,能用盗版的就不用正版的,还有就是没有市场的东西不做, 目前中国人做的软件是什么行业呢,中国人只做不会被轻易盗版的行业。

   国产软件被盗用的主要是在

   通用性应用软件,譬如杀毒,网络安全,媒体播放

   代表作:金山词霸,影音风暴,瑞星,天网之类.

   很多人就把金山公司当作了中国软件业的代表,说中国软件的代表是金山词霸和wps,实际大错特错。   

   三。中国软件业特点   

   中国的二三产业规模,产值数倍于印度,同时各行各业的信息化程度远高于印度。 中国的这么多行业,几乎每个行业都有自己的行业软件,这些软件是无法盗版,因为和业务相联系的,脱离了业务,

   换了一个行业,代码就成了一堆垃圾,所以没有人会去盗版,

   1。你每天做工交车,地铁,其收费,控制系统(控制系统里面有部分是外国的程序,是和硬件结合的)

   2。每天买东西,吃饭 收银系统

   3。医院, 医院管理系统

   4,证券交易系统 ,这个不用说了

   5。中国最为发达的制造业,从进货-销售-财务-库存,这个链条,都是中国人开发的软件来管理的

   6。你每天都是在上网,估计没有一个中国网站是外国人来编写程序建立起来的吧,就象天涯。。

   7.还有一块,就是象华为一样,软硬结合,主要是嵌入式开发,

   8。。。
  

   看清楚了吗? 中国人就是做的这些东西,做来是给自己用的,而印度人是做软件来给外国人用的。 还有一点,这些软件盗版有用吗? 比如你盗版了一个证券交易软件,有证券公司敢用的你软件吗? 所有这些软件除了业务上面的关联,还有一个就是后续需求变更,升级服务,不是一锤子买卖。   

  四。印度软件的特点

   可以和印度软件业相比较的是,中国的低端制造业务,譬如衣服,鞋子,玩具,箱包。 已经做到了高度的市场化,分工合理化,中国形成了领带,纽扣,拉链。。。等各种门类齐全, 零件生产流水线,产量大,生产成本低。   

   对应到印度软件,就是其流程清晰,管理严格。从需求分析-系统设计-功能设计-开发-测试,环环相扣, 每一个环节的流程监督和质量控制都做到位。   

   同时印度的软件公司更象软件工厂,几千上万人的软件公司不在少数。一年产值几亿几十亿美圆。   

   五。形成中国和印度软件特征的原因   

   中国和印度软件只有差别,没有办法比较差距。

   因为两者是完全不同的模式

   有一句话是很适用的,经济基础决定上层建筑
  

   印度软件的项目来源:外包

   特点:需求明确,功能明确,时间进度要求明确。

   客户素质:高,管理规范
  

   中国软件的项目来源:内需,遍地开花。

   客户素质:参差不齐,管理不规范

   特点:需求,功能,时间进度好象都可以随时在变

   在中国,软件公司当然是属于弱势一方,客户就是上帝,有了这样的客户,你还寄希望于软件公司管理能规范吗?   

   从软件工程的角度来说:

   项目失败的原因多是 1。需求分析不到位,设计偏差

   2。进度控制不力,未按时完成

   3。软件质量不稳定,无法上线等等
  

   在中国,一个软件项目失败最多的原因却是

   需求不可控。

   你无法阻止客户不断提需求,变更需求,变更流程。

   在这样的情况下面。如果你能够把这一点控制的稍微好一点,

   项目成功可能性就比较大。
  

   而在中国,怎么达到需求可以控制呢

   1。大软件企业,处于行业垄断

   2。贿赂客户公司领导

   3。行业自身特点形成的需求约束

   4。最后才是和客户沟通。

   一般小软件公司做大项目,基本没有好事,最后的结果多半是自己被客户无限制变更的需求压的喘不过气,最后客户也丧失信心了,项目被终止。   

   六。中国和印度两种模式的后果

   1。中国人把软件做成了劳动密集型产业,遍地开花,印度人把它做成了技术密集型企业, 在中国,IT行业的人都成了IT民工,尽管印度的人均GDP低于中国,但IT人员的 收入远高于中国。 另外一方面,中国的软件产值早已经超过了印度,在世界上面居于美国,欧盟,日本之后。   

   2。中国的软件企业成了血汗工厂,为中国各行各业信息化铺路了。   

   一个最简单的例子,一个几十人的工厂,是不会大型的软件企业为其开发软件的, 这个工厂也买不起这样的软件,而在中国,很多软件企业只有几个人,就会这样的小工厂服务, 他们没有任何规范的软件工程流程,所见即所得,赚到一点算一点。其他任何行业中,只要能 利用到软件,可以提供商机的都有人来涉足。譬如小区监控,家庭智能控制等等。

   另一方面大软件公司提供的软件同样非常便宜,因为盗版的缘故,中国人忽略了软件的价值, 导致中国的软件价格普通很低,按照个人的衡量,中国软件公司的开发出来的软件 应该按照美圆来计算,

   在中国,一个大型的软件只值100万元,而在印度,它也至少值100万美圆。。 在外国,一个企业软硬件的投入至少应该是1:2左右,在中国人们只知道硬件是需要花钱,认为软件是非常容易的开发的,不需要花钱。
  

   3。中国有非常完整的行业软件供应商,并且在各自行业形成了初步垄断 证券,保险,银行,医疗,财务,交通,服装。。。还有很多形形色色的ERP。 在这些行业,都有一些出色的软件公司,规模中等,所做的产品符合该行业的业务需求, 在这些行业,竞争力非常强,外国软件基本没有空间。 在这些行业里面,我们几乎不 把微软,IBM当作竞争对手。微软,IBM做的东西一样会被客户换掉。   

   4.IT人员出路渺茫,最后都被迫转型,IT行业成为了年轻人的行业.很多的IT人员从软件公司 流动了其服务的客户企业中,结果变成了在中国,最资深,最有经验的IT人员基本都在客户公司里面 吃老本过日子。

   当然中国的好的企业大多有自己开发团队,这些东西本身并不计算入中国的软件产值。
 

  七 发展前景

   1。印度软件外包遇到了和中国制造业出口相同的局面,就是外来订单减少,用工成本增加。 印度的IT人员成本是高于中国的,随着IT人员工资的逐步增加,利润减少,出现了发展困境。

   中国还说产业升级,而印度连软件内需都不大,如何升级?

   2。中国的软件业将高速发展,但IT人需要好自为之。

   前景一片大好,软件应用无孔不入,但IT人的生存环境却不会好转,需要找准自己的方向, 软件企业的血汗工厂特点将会更加明显。 在中国,很多城市都在借鉴印度的外包模式,希望从国际外包市场上面分一杯羹, 我觉得这是方向性的错误,中国学印度模式没有任何优势,只有死路一条。

   从事IT的人,要在中国的环境中生存,不要在外包企业中呆的时间过长,那样的话,将无法适应 中国残酷的环境,因为外包企业本身也不是能够提供你一份长久稳定的工作。
  

2010-02-24

process command line arguments in WSH script

Working with Command-Line Arguments
Microsoft® Windows® 2000 Scripting Guide
http://technet.microsoft.com/en-us/library/ee156618.aspx
 
How to pass arguments with VBScript
This sample script shows how to process command line arguments using Windows Scripting Host. The example below would be used such that you would save this code off into args.vbs file. Open a command line .
Type in args.vbs argument1 argument2 etc... just put spaces between your arguments.

Set ArgObj = WScript.Arguments
sArgCount = ArgObj.Count
For x = 0 to sArgCount - 1
  msgbox ArgObj(x)
Next
set ArgObj = Nothing


Test script that shows how many arguments you've typed
Option Explicit

Dim vArg, aArgs(), iCount, args
If WScript.Arguments.Count = 0 Then
  WScript.Echo "No Arguments Supplied"
  WScript.Quit
Else
  args = WScript.Arguments.Count
  WScript.Echo "You entered " & args & " Arguments:"
  ReDim aArgs(wscript.Arguments.Count - 1)
  For iCount = 0 To WScript.Arguments.Count - 1
    aArgs(iCount) = WScript.Arguments(iCount)
    WScript.Echo aArgs(iCount)
  Next
End If

Save above codes to args.vbs and run it like below:
csript   args.vbs  arg1  agr2  agr3 

Advance arguments passing skills
http://ezinearticles.com/?VBScript---Pass-DOS-Like-Arguments-to-Your-Script-for-Flexibility-and-Control&id=542008
This article shows you how to make DOS like switches with your VBScript
dir /ad /b

doublespace /mount c:
Further reading:
http://ist.marshall.edu/ist334/wsh_arguments.html


http://www.keyongtech.com/5463227-regular-expression-to-detect-repeating

2010-02-21

Active mode FTP VS passive mode FTP

http://www.velikan.net/iis-passive-ftp/

FTP is a TCP based service exclusively. There is no UDP component to FTP.
There are two ways to communication with FTP and that is: active and passive.
FTP is an unusual service in that it utilizes two ports, a 'data' port and a 'command' port (also known as the control port). Traditionally these are port 21 for the command port and port 20 for the data port. The confusion begins however, when we find that depending on the mode, the data port is not always on port 20.


How does Active FTP work?
In active mode FTP the client connects from a random unprivileged port (poer number > 1023) to the FTP server's command port, port 21. Then, the client starts listening to port N+1 and sends the FTP command PORT N+1 to the FTP server. The server will then connect back to the client's specified data port from its local data port, which is port 20.
Firewall on Active FTP - what ports should be opened on server and client side?
On server port 20 and port 21 must be opened on the client (home user) ports higher than 1023 must be opened for successfull ftp connection and transfer of files.

How does Passive FTP work?

In passive mode FTP the client initiates both connections to the server, solving the problem of firewalls filtering the incoming data port connection to the client from the server.
When opening an FTP connection, the client opens two random unprivileged ports locally (port number > 1023 and port number+1). The first port contacts the server on port 21, but instead of then issuing a PORT command and allowing the server to connect back to its data port, the client will issue the PASV command.
The result of this is that the server then opens a random unprivileged port (P > 1023) and sends the PORT P command back to the client. The client then initiates the connection from port (port number+1) to port (port number) on the server to transfer data.
The passive FTP protocol is very good because a lot of connections on internet are over ADSL, cable... and clients use routers to connect to the internet. Routers usualy filter data so active ftp protocol can not be used. This problem is solved with active file transfer protocol.
Firewall on Passive FTP - what ports should be opened on server and client side?
On server port 21 and ports (port number > 1023) must be opened. On client side no change is needed.

How To Configure PassivePortRange In IIS
http://support.microsoft.com/kb/555022

Configuring FTP Site Properties (IIS 6.0)
http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/0d2a9b2e-b697-4bb3-8a61-0fad73a1fa08.mspx?mfr=true

port triggering VS port forwarding

difference between port triggering and port forwarding
http://www.dslreports.com/forum/remark,14446487

FTP has nothing to do with port triggering and everything to do with a statically forwarded port. Its the algorithm in the router that handles the random upper level ports that are used by the server software. Initial negotiation is done by a user outside on the WAN who can access the server because port 21 is forwarded (an open door if you will). Then the software authenticates the user (name/password, however you have set it up) and then starts to manage the request, which means opening up data ports for the actual transfer, the router handles all of this properly so that the outgoing is sent to the originator etc....)
Port triggering is different in that its designed to allow dynamic port forwarding An outgoing request by a user ON THE LAN, tells the router (by means of the port being used on the outgoing request) to open or forward a port or range of ports for a limited period of time, so that incoming traffic on different ports (those opened) can get through the router NAT and to the sender.
In order to use the same service on a different LAN computer, you have to manually replace the LAN computer's IP address in the forwarding port with another LAN computer's IP address.
Trigger port forwarding solves this problem by allowing computers on the LAN to dynamically take turns using the service. The router records the IP address of a LAN computer that sends traffic to the WAN to request a service with a specific port number and protocol (a "trigger" port). When the router's WAN port receives a response with a specific port number and protocol ("incoming" port or port range as designated by the end user), the router forwards the traffic to the LAN IP address of the computer that sent the request. After that computer's connection for that service closes, another computer on the LAN can use the service in the same manner. This way you do not need to configure a new IP address each time you want a different LAN computer to use the application.
For example:
Jane requests a file from the Real Audio server (port 7070).
Port 7070 is a "trigger" port and causes the router to record Jane's computer IP address.The router associates Jane's computer IP address with the "incoming" port range of 6970-7170 because that what has been set up in the port triggering menu!!
The Real Audio server responds to Janes request and uses the expected port or ports ranging between 6970-7170.The ZyWALL forwards the traffic to Jane's computer IP address.Only Jane can connect to the Real Audio server until the connection is closed or times out. The router times out depending on the brand in use, both UDP and TCP. Should be configurable or at least known.
Port forwarding (static) is the process of opening a door in the router, by the user, so that an outside person/entity can access a PC or server behind the router.The door is always open and requires no action by the users on the LAN.
Port triggering is based on an OUTGOING request by a user on the LAN. It allows dynamic port forwarding to temporarily occur, so that the user can access services (REAL AUDIO) or gaming etc..... It assists the users behind the PC. A method of sharing a port or port forwarding range.
FTP algorithm is port negotiation between the FTP software and the router. Initial communication is done by an outside (WAN side) PC/user, using the open door/port 21. A standard port forwarding case.The FTP program then selects random ports and communicates that with the WAN side user. The router firmware detects which ports are being used and ensures that traffic from the WAN user reaches the FTP server, on the high numbered ports.This traffic is normally uploading by the WAN User and thus the ports need to be open so that the return packets (Ack) which communicate progress of the upload can reach the FTP server. The other traffic would be in the case of downloading data to the server by the WAN side user.
It is not triggering of a set range of identified ports, its a negotiation of randomly assigned ports between the router and FTP software.

2010-02-18

command line to check remote session and kill

command line to check remote session:

qwinsta /server:servername

rwinsta sessionname [session id] /server:servername

2010-02-05

Explanation of Regsvr32 usage and error messages

http://support.microsoft.com/kb/249873

Troubleshooting Program Deployment By Using Verbose Logging

Troubleshooting Program Deployment By Using Verbose Logging

When a program that is deployed through Group Policy is not installed correctly on a client computer, a log file can be generated that records the steps of the Group Policy Application Deployment component leading up to the unsuccessful installation. This information, in conjunction with logging from the Windows Installer service, can be very helpful in determining the cause of the problem.


To enable verbose logging of Application Deployment operations, add the following registry value on the client computer. Delete this value after troubleshooting to avoid performance degradation:
Key: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Diagnostics

Note that the you may need to create the Diagnostics key.

Value: AppMgmtDebugLevel
Type: REG_DWORD
Data: 4b
The logging file is named Appmgmt.log and is located in the %SystemRoot%\Debug\Usermode folder on the client computer.




http://support.microsoft.com/kb/246509/EN-US

2010-02-04

Microsoft FTP site

Looking for those legacy tools for win98, win2000, IIS4, NT4? Try this site:
ftp://ftp.microsoft.com

2010-02-03

How to delete and recreate the user profile on the local computer (Vista)

How to delete and recreate the user profile on the local computer (Vista)

1. restart the computer and logon with an administrator account.
2. Rename (or delete) the existing user profile folder: "c:\users\xxxxx"
3.Open Registry Editor (regedit.exe)
4. First, export to backup the registry key: HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
5. Then, expand the ProfileList and delete the key which the Data of ProfileImagePath is “C:\users\xxxxxx”
6. Log off and try to logon with the problematic account.

2010-01-29

Failed to open EXE files in Vista

Symptoms:
• The EXE file opens in Notepad.
• EXE file opens in some other installed programs.
• Windows displays "Open With" dialog box to choose the program.
• Windows shows error message, "Windows cannot find .exe file. Make sure you typed the name correctly".

Solution:
1. Open a DOS prompt window:
Press CTRL+ALT+DEL keys and open "Task Manager". Hold down the "CTRL" key and click on "New Task" button and it'll open a Command Prompt window.
If your login account doesn’t have admin right, then you need to do this by opening a new DOS window with “runas” command from the DOS window:
runas /user:DomainXXXXX\AdminAccountYYYYY cmd
it will open another DOS window with your admin account.
From the new DOS window, use “regedit” to open the registry editor.
2. Go to “HKEY_CLASSES_ROOT\.exe”. In the right-side pane, change the value of “Default” key to "exefile"
3. Go to “HKEY_CLASSES_ROOT\exefile\shell\open\command”. In the right-side pane, change the value of “Default” key to: "%1" %*
4. Exit Registry Editor and reboot.

2010-01-25

Acess denied error with psexec

You got Access Denied error message with below two scenarios.
Scenario one:
You ran the below command logged in with your Domain\UserName onto localmachineA
psexec \\remoteserverA -i c:\windows\system32\cmd /k dir \\remoteserverB\share

Scenario two:
Firstly you ran the below commdn to open a "cmd" command prompt from remote machine:
psexec \\remoteserverA CMD
After that, you ran "net view \\remoteserverB" and you got access denied.

The reason behind this is that by logging in implicitly you will loose the network resources on \\target that you would have if you had logged on explicitly.


What is "implicit login" and what is "explicit login"?

There is an important difference between using implicit versus explicit logon:

"psexec \\target some_command" uses implicit logon to \\target.
I.e. the user logged in locally will be used to logon to \\target. But logging in implicitly he will loose the network resources on \\target that he would have if he had logged on explicitly.
As -e was not specified his environment will be that of the ".default" user on \\target. Check e.g. the variable %userprofile%.

"psexec \\target -u user - p passw some_command" uses explicit logon to \\target.
psexec is told to explicitly identify as user "user" on \\target (even if he is the same user "user" logged in locally). So network resources assigned to user "user" on \\target may be available.
As -e was not specified his environment will be that of the ".default" user on \\target. Check e.g. the variable %userprofile%.

psexec \\target -u user -p passw -e some_command uses explicit logon to \\target and loads the environment of user "user".
Same as above plus:
As -e was specified the environment on \\target will be that of user "user", not the one of user ".default".

NOTE:
Starting with psexec v1.80 the default behaviour changed! The default now is to load the correct user environment. Specifying -e will keep psexec from loading the user's environment and use the .default environment instead.


To find out more details:
http://forum.sysinternals.com/forum_posts.asp?TID=5072&PN=1

Useful psexec command

Useful psexec command

PsExec is part of a growing kit of Sysinternals command-line tools that aid in the adminstration of local and remote systems named PsTools.

Utilities like Telnet and remote control programs like Symantec's PC Anywhere let you execute programs on remote systems, but they can be a pain to set up and require that you install client software on the remote systems that you wish to access. PsExec is a light-weight telnet-replacement that lets you execute processes on other systems, complete with full interactivity for console applications, without having to manually install client software. PsExec's most powerful uses include launching interactive command-prompts on remote systems and remote-enabling tools like IpConfig that otherwise do not have the ability to show information about remote systems.

1.Download psexec:
http://technet.microsoft.com/en-au/sysinternals/bb897553.aspx

2.Usage:
Usage: psexec [\\computer[,computer2[,...] | @file][-u user [-p psswd]][-n s][-l][-s|-e][-x][-i [session]][-c [-f|-v]][-w directory][-d][-][-a n,n,... ] cmd [arguments]


FAQ: Common PSTools Issues
http://forum.sysinternals.com/forum_posts.asp?TID=15920


3. Examples:
The following command launches an interactive command prompt on \\marklap:
psexec \\marklap cmd

This command executes IpConfig on the remote system with the /all switch, and displays the resulting output locally:
psexec \\marklap ipconfig /all

2010-01-23

iPhone jailbreak steps

1.Preparation:
1.1.backup iphone:
http://support.apple.com/kb/HT1766

Right-click (or Control-click) the iPhone or iPod touch in iTunes under Devices and choose Back Up.

1.2.download iphone 3.1.2 firmware
http://appldnld.apple.com.edgesuite.net/content.info.apple.com/iPhone/061-7265.20091008.Xsd32/iPhone1,2_3.1.2_7D11_Restore.ipsw

1.3. download blackra1n
http://www.blackra1n.com/

2.start the break:
from your computer, double click the saved blackra1n
then clicke on "make it rain"
it will show “entering recovery mode...”
then you will see " your jailbreak is done once the device reboots. ....", click "ok" and reboot iphone.

I got below problem at this step:
frome itune you see below error message:
itune has detected an iphone in recovery mode, you must restore this iphone before it can be used with itunes

click on restore from itune, after a while iphone reboots.
(turn off blackrain window before doing so)
I got a white blank screen on iphone and itune says " preparing iphone for restore...."
then itune said: the iphone "iphone" could not be restored. an unkonw error occurred (13)
I figured out this was because a network issue in my home network, after fixed the network and tried it again, the restore worked fine.
BTW, the restore did ask for firmware package location and it extracted it by itself.

then itune shows " restoreing iphone firmware......."
After a while and a auto reboot, everything is ok.
Now I can get into iphone as usual, but I found everything is factory setting and all data lost.
I need to resotre from my data backup.Went to itune, click restore backup and choose the right

backup name, few minutes later everything done.

3. install cydia
Once blackra1n is installed properly that means jailbreak done.
click "balckra1n" from iphone, and then choose to install cydia. make sure you have network connected with your computer.

Note, my iphone was unlocked by the vendor before jailbreak.

references:
http://zone.it.sohu.com/forums/thread-3626476-1-1.html
http://zone.it.sohu.com/forums/thread-3626476-1-1.html
(both are very detailed and very good, but in Chinese only)

http://hi.baidu.com/%BA%D3%EB%E0%D3%E3/blog/item/88b4ba03d957f17c3812bb6f.html

English ones:
http://www.iphonedownloadblog.com/2009/10/11/jailbreak-iphone-blackra1n-tutorial/
http://macx.cn/a/a605i1180449.htm



Install tomtom map instruction:

Step 1 : Have an iPhone. Make sure you have OS 3.0
Step 2: Jailbreak iPhone - Follow exact instructions here:
http://www.iphonedownloadblog.com/2009/10/11/jailbreak-iphone-blackra1n-tutorial/
Step 3: Enter Cydia on the iPhone, go to manage, go to sources, click edit (top right), click add (top left) and type : http://cydia.hackulo.us/ (see screenshot) . Ignore Cydia’s silly warnings
Step 4: click search (bottom right), type in ‘installous’. The only result you should get is ‘Installous’(see screenshot). Click this and press ‘install’ (top right)
Step 5: click search again, type in ‘appsync’. The only result you should get is ‘AppSync’(see screenshot). Click this and press install
Step 6: Exit Cydia, and click the new installous icon. Click settings (bottom right). Change ‘Install Method’ to dirty. Toggle ‘iTunes Sync’ to On
Step 7: Download the tomtom app here:
http://thepiratebay.org/torrent/5061144/TomTom_Australia_for_iPhone
Step 8: Drag the app you just downloaded into iTunes
Step 9: Plug your iphone into your computer, it should now sync the app. this can take up to 40 minutes
Step 10: Unplug iPhone and run the tomtom app!

How to Use Skype over 3G on iPhone

http://blog.tmcnet.com/blog/tom-keating/skype/how-to-use-skype-over-3g-on-iphone.asp

Skype over 3G is disable by most of the carriers hence Skype by default requires WiFi in order to make calls.
this article shows you how to fix that so you can have some nice Skype over 3G action!

How to Use Skype Over 3G on your iPhone
Requirements: Jailbreaking, VoIPover3G, OpenSSH or DiskAid, and Mobile Substrate

Note: You do not need to install Intelliscreen to ensure your modified VoIPover3G.plist file works. The latest MobileSubstrate makes sure that VoIPover3G is enabled and working properly. Previously, you needed to install Intelliscreen as a workaround, but no more.

1. Jailbreak
2. Open Cydia. Search for and install VoIPover3G. This enables you to truck apps that "require" WiFi to also work over your 3G data connection
3. While in Cydia install OpenSSH which will allow you to transfer files from/to the iPhone.
4. Install the latest Mobile Substrate.
5. After all these apps are installed, you should reboot your iPhone.
6. Next, connect your iPhone to your home WiFi network and get the IP address the iPhone was assigned. Click on Settings>WiFi>circuluar blue arrow
7. Pick either DiskAir (option a) or OpenSSH (option b) to modify the iPhone file. (on your pc)
a) DiskAid instructions: (a tool for PCs and Macs which enables to use your iPhone or iPod Touch as external Disk.)
1) Download & install DiskAid
2) Connect iPhone to PC or Mac using USB cable.
3) Drag the /Library/MobileSubstrate/DynamicLibraries/VoIPover3G.plist file to your PC or Mac
4) goto Step 8)
b) OpenSSH (more advanced, but techies love SSH/SCP.
1) Download a SSH/SCP program. For PC users I recommend WinSCP.
2) In WinSCP, make sure to select "SFTP" and enter in this info:
- Server: your iPhone's IP address
- Username: root
- Password: alpine
- Port: 22
3) Click on "Connect", which might take a few seconds to connect to your iPhone.
4) Navigate to: /Library/MobileSubstrate/DynamicLibraries
5) Continue to next step (8.)
8. From your PC, double-click VoIPover3G.plist which will open the file.
9. You will likely see the following text within "VoIPover3G.plist"or something very similar:

Filter = {Bundles = ("com.Fringland.Fring", "com.apple.AppStore", "com.audiofile.Interstate", "com.apple.MobileStore");};

Append "com.skype.skype" to the text (with a comma) which will then look like this:

Filter = {Bundles = ("com.Fringland.Fring", "com.apple.AppStore", "com.audiofile.Interstate", "com.apple.MobileStore", "com.skype.skype");};

10. Now save the modified file. If using WinSCP, it will automatically upload back to your iPhone. If using DiskAid, just drag-and-drop the file back onto the iPhone overwriting the old one.
11. Uninstall the Skype app & reboot your iPhone.
12. Reinstall the Skype app from the Apple App Store

And now you will be able to make Skype over 3G calls. Enjoy!
From your iphone, make a call test to ensure skype over 3g is working. Previously you will get a message saying call over 3g is not available and you need to use wifi to make call. Now the message disappeared!


I should point out that MobileSubstrate along with VoIPover3G.plist enables you to install appstore apps larger than 10mb over the 3g and you can use other Voice over IP apps such as Fring over 3G. It even allows ustream to work over 3G - another app restricted to WiFi only. Good stuff!

2010-01-18

Find and/or Delete Duplicate Rows from SQL server

How do I identify duplicate rows?
Group the rows by CustName, Pincode. Rows having similar CustName and Pincode will have more than one rows in the grouping. So locate them using HAVING COUNT(*) > 1. If duplicate values are encountered, return the maximum ID for each duplicate row. Using the outer query, delete any ID returned by subquery.

1.SQL Server 2005 Solution:
-- Find Duplicate Rows
SELECT MAX(ID) as ID, CustName, Pincode FROM #Customers
GROUP BY CustName, Pincode
HAVING COUNT(*) > 1

-- Delete Duplicate Rows
DELETE FROM #Customers
WHERE ID IN
( SELECT MAX(ID) FROM #Customers
GROUP BY CustName, Pincode
HAVING COUNT(*) > 1)

2.-- Find Duplicate Rows
SELECT MAX(ID) as ID, CustName, Pincode FROM #Customers
GROUP BY CustName, Pincode
HAVING COUNT(*) > 1

-- Delete Duplicate Rows
DELETE FROM #Customers
WHERE ID IN
( SELECT MAX(ID) FROM #Customers
GROUP BY CustName, Pincode
HAVING COUNT(*) > 1)


Check out the full article:
http://code.msdn.microsoft.com/SQLExamples/Wiki/View.aspx?title=DuplicateRows