back to top

16 Questions to Make Sure You’re Covered by Your Wedding Photography Contract

A- A+

Wedding photographers are tasked with capturing a major milestone — but what happens if something goes awry? A wedding photography contract should encompass everything from the major details, like when and where, to the “what if” scenarios.
A photography contract serves both to protect the photographer’s business and ensure the couples receive what they paid for.
But toss in a bunch of legalese, and contracts can be confusing, especially for photographers just starting out. While you can get a head start by using sample wedding photography contracts, photographers need to make sure the information tailors to them by asking themselves a few questions.
Here’s what photographers need to consider before finalising the wedding photography contract.
But first, a bit of legalese before the tips on legalese — I’m a photographer, not a lawyer. Information in this article should be considered photography advice and shouldn’t be considered legal advice.
Close up of anewlywe couple holding hands - wedding photography contract

1. What Are the Exact Wedding Details?

First and foremost, the top of the contract should cover some basic information about the day. The wedding date and city should be included, along with the names and contact information for both the bride and groom. 
Often, couples sign the agreement with months and even years of planning left to do. Don’t pressure your clients to put an exact timeline inside the contract. A date and general location is fine. Include in the contract though when the couple needs to send you a finalized timeline to leave you enough time to prepare.

2. What’s Included in the Price and What’s Not?

A wedding photography contract should be well-detailed, particularly when it comes to what’s included in the price and what’s not. The wedding contract should detail the total price and then list everything that includes, like digital files, prints or albums.
Even better, include a list of anything that’s extra inside the contract. You’ll avoid becoming like the photographer in a recent defamation lawsuit over a $125 album cover fee. If it’s not included in the package, list it and how much it costs.
A wedding photography shot of the interior of a church

3. What’s the Deposit Amount, and When Is the Remainder Due?

Deposits help ensure that couples that get to the final contract process really are interested in your work. A deposit holds the date and covers any initial time investment you may have.
Set a deposit amount that’s high enough to discourage cancellations but low enough that you’re not tempted to give a heartbroken couple everything back.
Along with detailing the deposit amount, detail when the rest is due and the exact amount remaining. Some photographers will ask for multiple payments, others just request everything to be paid in full before the wedding day.
A close up shot of two wedding rings on a wooden background

4. How Long Will You Shoot for, and What Happens If You Go Over?

Every wedding is different. Some weddings might be short and sweet while other traditions may push the nuptials over a much longer stretch. Detail how long you will shoot for and how much additional time costs if the wedding happens to go longer than expected.
Even if you prefer to work on a package basis rather than an hourly one, include a maximum number of hours.

5. How Much Editing Is Done on the Images? What If the Clients Want Additional Editing?

I often see wedding photographers in group forums asking for advice after a bride or groom demands time-intense edits after the photos have already been delivered. Be sure to include in your contract how much editing you do to the pictures.
Is it just a light colour correction? Do you zap zits? Remove tan lines? Including a description of the editing process sets proper expectations for the couple.
Remember, list the cost of anything that’s not included. Add a clause listing a cost for additional edits beyond what you’ve stated in the contract.
A close up shot of a pair of wedding shoes and a bowtie on a wooden chair

6. Who Has Rights to the Photos?

Non-photographers often assume that they own images simply because they are in them, while photographers assume they own the rights to the art they create. A wedding photography contract should have a rights clause that details who owns the rights to the images and what rights the couple has.
My wedding photography contract, for example, says that I retain the copyright to the images, and that while the couple may not sell their images, they can use them for personal purposes. If you don’t include digitals with reprint rights, be sure to be clear on that in the contract.

7. Can the Bride and Groom Share the Images on Social Media?

Many couples want to share their wedding images. That usually entails social media. Along with the rights section, detail if the couple can share the images on social media.
Social media referrals are one of the biggest ways new brides find my work. It would be bad for business if I didn’t allow couples to share their wedding images on social media.
I do, however, in the contract request that images shared online include an image credit with either a link to my website or a tag to a social media profile.
Overhead still life of four wedding flower bouquets on a wooden surface

8. Do You Need a Model Release to Use the Images for Other Purposes?

The bride and groom may not own the copyright to the images, but the people in the photographs do have rights as to how their likeness can be used.
If you want to use the images in your portfolio, include a model release or clause that states that you have permission to do so, or you may catch the couple off-guard.
It’s also a good idea to include something allowing other publication types for the images. For example, if you’d like to submit the images to a bridal magazine.

9. What Happens If There’s an Emergency and You Can’t Shoot the Wedding?

Photographers are only human. So what happens if something prevents the photographer from shooting the booked wedding? What if you break a leg or arm and can’t shoot? What if you get into a car crash on the way to the wedding?
The wedding photographer should factor in those what-ifs, both to benefit the couple and the photographer. Consider both events that give you plenty of time to make other arrangements, such as a maternity leave, or mishaps shortly before the wedding.
My contract, for example, states that if an Act of God means I’m unable to shoot a wedding, I will first make every effort to find another photographer to cover the day. If that’s impossible, then I will refund the full cost. 
Still life of a pair of bridal shoes and a bouquet on a chair - wedding photography contract

10. What Happens If the Bride and Groom Cancel the Wedding?

Wedding cancellations aren’t common, but they do happen. Sometimes, the wedding is cancelled. Other times, the date changes or the couple decides to go in a different direction with the photography. Make sure the wedding photography contract details what happens in this case. Include how much of the payment is refundable.
My contract, for example, states that the 25 percent deposit is non-refundable. Any of the remaining 75 percent that has already been paid is refundable in the event of a cancellation.
A closeup portrait of the bride and groom taking their vows - best wedding photography contract tips

11. What Happens If the Wedding Date Changes?

Sometimes, the wedding isn’t canceled but the date changes. What happens to the couple’s deposit if that happens? Many wedding photography contracts will say if a wedding date is changed and the new date is available, the deposit will then be good for the new date.
But, if the date changes and the photographer is already booked for that day, the deposit is forfeited just as with a cancellation.

12. What If You Miss a Shot the Bride and Groom Forgot to Mention?

Photographers often don’t know who’s important to the bride and groom. A family member might not show up to the family photos or the bride and groom forget to tell you about a specific shot that they really want. Make sure you’re not liable for something you couldn’t control.
Included in my contract, I recommend that my couples appoint a family member to help during the family images.
This is great for getting the family together for the formals and this person is also better able to determine when someone important is missing.
Close up photo of two wedding rings on red background

13. Can Guests or Other Professional Photographers Take Photos Too?

If a family member steps in front of the photographer during the kiss, is the photographer liable for missing that moment?
Some photographers will require unplugged weddings. Others (myself included) requests that the couple reminds the guests to be considerate of the person they choose to capture their day.

14. How Much Are You Liable For?

If the unthinkable happens, how much are you liable for? Many wedding contracts include a statement that liability is limited to the amount that the couple paid.
In other words, a lawsuit may mean the photographer has to refund the entire fee, but the liability cannot go over what the couple paid the photographer.
A close up shot of a wedding bouquet with bokeh background

15. What About Breaks, Food, and Assistants?

Wedding photography is a long stretch of shooting. Some photographers add breaks into the contract to leave some time to go to the bathroom or eat something during that long stretch. 
And speaking of food, are the bride and groom expected to include the photographer in the headcount for the caterer? Some photographers choose to require this and include it in the contract. Another option is to leave it up to the couple and bring a packed meal if not.
Wedding contracts should also detail how many assistants the photographer may bring. This is helpful information for a bride and groom that has a guest list that’s close to the building’s capacity.
A close up photo of wedding rings on a table. Wedding photography contracts

16. When Will the Bride and Groom Receive the Images and in What Format?

Finally, make sure to answer every couple’s question after the wedding is over — when will the photos be ready? Include a reasonable range of time for the delivery of the final products stated in the contract, whether that’s a USB or an album.
This varies with your workflow, but be sure to leave a little bit of wiggle room in case you are ill or other delays happen in the editing process. It’s always better to surprise a couple with their photos early than it is to apologise for being late.

Conclusion

Wedding photography contracts are a legal document, yes, but they also help make sure the photographer and the couple are on the same page from day one. Managing expectations, starting with that contract, makes you less likely to have a dissatisfied client.
Starting with a template is fine, but make sure to ask all the right questions so that your wedding photography contract covers your business, your style — and your couples.
For more great wedding photography tips, why not check out our articles on must-have wedding photography accessories or backup workflow.

Save this article to your Pinterest profile to access it later!
1 comment
  1. I thought it was interesting when you said that one thing to consider when giving wedding photography is to tell your client how soon they will receive the photos back. I have been thinking about becoming a photographer and am trying to learn how to become successful in the business. I would be sure to tell my clients when they will receive their pictures back in order to keep them happy and to keep myself accountable.

Leave a Reply

Your email address will not be published. Required fields are marked *

[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]
[type='text']
[type='text']
[type='password']
[type='password']
[activeKey]
[activeKey]
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
['rmockx.RealPlayer G2 Control', 'rmocx.RealPlayer G2 Control.1', 'RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)', 'RealVideo.RealVideo(tm) ActiveX Control (32-bit)', 'RealPlayer']
[index]
[index]
[i]
[i]