Subscribe to our RSS Feeds
The postings and links in this blog are provided "AS IS" with no warranties, and confer no rights. The opinions expressed here are solely those of the authors.

Registering DirectShow Filter in WinCE6


We can register directshow filter in two ways
  1. Dynamically using regsvr tool
  2. statically at run-time image creation

1. Dynamically using regsvr tool

   If registry details for filter is not included in image then we go for dynamic registration.
It is same as window desktop DirectShow filter registration process. We use either regsvr32.exe or regsvrCE.exe for including filters registry information in WinCE registry. We need to register each time after image bootup before calling filter for any use.

Implementation Process
a.       Declare filter information in structures, DirectShow having a set of structures for describing filters, pins details, and media types details.
             AMOVIESETUP_FILTER - Describes a filter.
             AMOVIESETUP_PIN - Describes a pin.
             AMOVIESETUP_MEDIATYPE -Describes a media type.
static const WCHAR g_wszName[] = L"Some Filter";
AMOVIESETUP_PIN sudOutputPin = {
    L"Output",      // Pin string name.
    FALSE,          // Is this pin rendered?
    TRUE,           // Is it an output pin?
    FALSE,          // Can the filter create zero instances?
    FALSE,          // Does the filter create multiple instances?
    &GUID_NULL,     // Connects to filter.
    NULL,           // Connects to pin.
    2,              // Number of media types.
    sudMediaTypes   // Pointer to media types.
    &CLSID_SomeFilter,      // Filter CLSID.
    g_wszName,              // Filter name.
    MERIT_NORMAL,           // Merit.
    1,                      // Number of pin types.
    &sudPins                // Pointer to pin information.

b.      Declare a factory template which having a pointer for the filter information structure sudFilterReg. 

CFactoryTemplate g_Templates[] =
        g_wszName,                      // Name.
        &CLSID_SomeFilter,              // CLSID.
        CSomeFilter::CreateInstance,    // Creation function.
        &sudFilterReg                   // Pointer to filter information.
int g_cTemplates = sizeof(g_Templates) / sizeof(g_Templates[0]);

c.     Implementing the DllRegisterServer  and DllUnregister function. 

These function will get call when regsvr32 and regsvrCE is used to register or unregister filter. We need to export these function in def file.
These functions internally calls AMovieDllRegisterServer and AMovieDllUnregisterServer function for creating registry entries for every component declared in the factory template array.
AMovieDllRegisterServer2(BOOL ) currently don’t support Windows CE6.

While writing these functions don’t pass any argument to AMovieDllRegisterServer as mentioned in MSDN (Link) and be careful with exact letter case.
Eg :
STDAPI DllRegisterServer()
    return AMovieDllRegisterServer();

STDAPI DllUnregisterServer()
      return AMovieDllUnregisterServer();

Registration process.

Click Start -> Run
Then type regsvrCE filter.dll
If you get success msg then start using your filter else start debugging.

2. statically at run-time image creation

add your registry, So filter will get register while image bootup.
will update this soon.. 

9:32 PM

Get Certified on CE 6.0 Today! MCTS Certification now available, 50% off till January 5th 2009

Microsoft Certification for Windows Embedded CE 6.0

Showcase your Windows Embedded CE development skills—earn the new MCTS certification for Windows Embedded CE 6.0. Exam 70-571 validates the skills and experience of seasoned Windows Embedded CE developers, and is available now at Prometric Testing Centers worldwide.

Take 50% off : Act now to get 50% off the exam price –email for a 50% off voucher. Voucher expires January 5, 2009. To find a Prometric Testing Center near you visit or call 1-800-755-3926.

New to CE: If you are new to developing for Windows Embedded CE, see below for resources to get you started.

Exam Preparation Kit: Microsoft and Windows Embedded Partner Adeneo have collaborated to create a free, downloadable Preparation Kit to help experienced CE developers prepare for the exam. The English, German, French and Simplified Chinese versions the Preparation Kit are available today. We’ll post additional versions in Japanese and Korean as they are available.

download the Preparation Kit today in a language of your choice!

Getting Started

If you are new to Windows Embedded CE 6.0 development, here are some great places to get started.

  • Find an introductory class near you at a Windows Embedded Official Training Partner
  • Use the Windows Embedded Developer Center on MSDN to find a wealth of articles, technical documentation, blogs, community, downloads, and more.
  • If you speak Russian, please visit Quarta Technology’s Windows Embedded CE Knowledge Base.
  • Books on Windows Embedded CE 6.0 Development

Certification Specifics


Microsoft Certified Technology Specialist: Windows Embedded CE 6.0


Exam 70-571: TS: Microsoft Windows Embedded CE 6.0 Development

Languages: English, French, German, Japanese, Simplified Chinese, Korean

This exam was designed for developers with two to three years of experience in an embedded system environment, one year of experience using Windows Embedded CE, and six months of experience using Windows Embedded CE 6.0. Candidates may be an embedded developer, embedded engineer, device driver developer, board support package engineering developer, field application engineer, and/or quality assurance engineer. Candidates typically develop, implement, test, and support embedded devices. In addition, candidates should have a good understanding of Microsoft Visual Studio 2005 with Platform Builder, C, and C++. Get a full overview of the topics covered by the exam.
7:30 PM

Microsoft Windows Mobile Developer Contest 2008

Microsoft Windows Mobile
Sponsored by Microsoft

Write a great article for your chance to win a Microsoft Windows Mobile device valued at ~$1000 USD (or other great prizes)!

We’re looking for the best overall article about Microsoft Windows Mobile development. Entries will be largely judged by you, the mobile developer community, via The Code Project’s article voting mechanism and discussion boards. In order to qualify, articles must be submitted to the Mobile Development section of between October 14, 2008 and January 14, 2009 at 11:59:59 PM US Eastern Standard Time. After the competition entry period has closed, our judges will determine the winners as follows:

  • Grand prize: Overall Best Article
    • This winner will receive a Microsoft Windows Mobile device valued at ~$1000 USD (such as the HTC Touch Pro)
    • Judging criteria include article content, voter ratings and popularity
  • Runner-up: Most Popular Article
    • This winner will receive a Windows Mobile device valued at ~$300 USD (such as the HTC P3452 Touch Enhanced)
    • Judging criteria include article content and popularity
  • Runner-up: Most Discussed Article
    • This winner will receive a Windows Mobile device valued at ~$300 USD (such as the HTC P3452 Touch Enhanced)
    • Judging criteria include article content and forum discussion

Keep checking back for updated prize info once the contest gets under way! And if you're in need of ideas, some of these links might help get your juices flowing:

Contest Rules and Entry Requirements
  1. Qualifying articles must focus on Microsoft Windows Mobile-specific technologies and be submitted to the Mobile Development section of
  2. Platform: Win Mobile must be selected as an Article Attribute of all valid entries. This Article Attribute can be selected on the first page of the article submission wizard when submitting your article online.
  3. The contest will begin on October 14, 2008 and end on January 14, 2009 at 11:59:59 PM US Eastern Standard Time. All entries must be submitted during this period in order to qualify.
  4. Our judges' decision is final and no correspondence will be entered into.
  5. Only those who live in jurisdictions in which this contest is legal may enter.
  6. Any breach of the rules will result in the prize being awarded to another entrant.
  7. By entering the contest you agree to the rules, conditions of entry, and agree that your name, member profile information, and article can be used for promotional purposes by The Code Project and Microsoft.
  8. Entries shall be deemed to be submitted by the authorized account holder of the e-mail address submitted at the time of entry unless clearly indicated otherwise. "Authorized account holder" is defined as the natural person who is assigned to an e-mail address by an internet access provider, on-line service provider, or other organization (e.g. business, educational institution, etc.) that is responsible for assigning e-mail addresses for the domain associated with the submitted e-mail address.

This competition is open to software development professionals & enthusiasts who are of the age of majority in their jurisdiction of residence. However, residents of Quebec and of the following countries are ineligible to participate due to legal constraints: Cuba, Iran, Iraq, Libya, North Korea, Sudan, and Syria. Employees (or a member of their immediate family) of The Code Project or of Microsoft or of any of their affiliates, subsidiaries, advertising or promotional agencies are also ineligible to participate. Void where prohibited by law.

Determination of Winners

All entries must be posted in the Mobile Development section of the website and possess the Article Attribute Platform: Win Mobile. All entries will be reviewed and rated by members of The Code Project community, as well as undergo the review of judges appointed by The Code Project. A winner will be determined by The Code Project's selected judges, after taking into consideration the comments and ranking of entries by members of The Code Project community, on the basis of which entry best meets the judging criteria set forth.

Judging criteria include

  • Article rank and popularity on The Code Project
  • How tightly an entry adheres to the conditions of entry, including article focus and scope
  • Broad applicability to a wide variety of developers
  • Overall article quality, coherence and structure
  • Amount of discussion an entry generates in its forum area

Full conditions of entry can be found here.

5:05 PM

Windows Embedded Download Center


Windows Embedded

This is a center from where you can download all stuff related to Windows Embedded. This place useful for new to windows embedded, professionals , commercial development.

You can download Trial version embedded CE, XP Embedded, standard embedded, Navready, latest updates, and also can apply for trial product key.

You need a Microsoft live ID to download any of these.

Downloads :

Source :