9.23.2008

Download Rapidshare Book Photoshop Fine Art Effects Cookbook

Photoshop Fine Art Effects Cookbook
O’Reilly | 176 pages | February 2006 | pdf | 1 MB

Photoshop Fine Art Effects Cookbook tells you all you need to know to turn your digital photographs into images that mimic the styles of great visual artists.
From advice on how to choose appropriate subject matter to 62 step-by-step recipes that show you how to create an “original” van Gogh, Vermeer, Edward Weston, or Andy Warhol (among others), this book is an authentic guide to simulating the work of great artists-and a whole lot of fun.

Download from RapidShare

http://rapidshare.com/files/48944219/Photoshop_Fine_Art_Effects_Cookbook_curtis112.rar

Download from Depositfiles

http://depositfiles.com/en/files/1488550

Download from Easy-Share

http://w14.easy-share.com/3168631.html

Windows Vista Black Edition 2009 SP1

Windows Vista Black Edition 2009 SP1

Platform: Windows
Compilation Date: 17.07.2008
Author: Benjamin
Size: 4.2GB
Activation Needed: No
CD-Key: N/A
Architecture : 32-Bit
Total Parts: 200 x 21 = 4200MB

Note: Start a Fresh installation from the DVD and install in a separate partition. Dont start the installation from your Previous windows.

Minimum System requirements:

* 1GB RAM
* 20 GB of Hard Drive space
* 128 MB Graphics Memory (To enable Aero)
* 17′inch Monitor (1024 X 76
* DVD-ROM
* Above Pentium 4 Processor
* Pixel Shader 2.0 in hardware
* 32 bits per pixel

This Operating system is purely designed from Genuine Vista Ultimate by Benjamin. It will be more comfortable, faster and reliable when compared to other vista operating systems. All the error which the user faced in vista ultimate are fixed and tweaked. New hot fixes, updates and the Vista SP1 package are integrated. All the dream scene packs are activated. The Dolby digital plugins are also integrated for more fun with musics. New windows sounds, New Gadgets, New Login screen, New Default theme and more…. You can install any hardware without any problem, all the hardware errors are fixed. Just install this Black Edition 2009 and start your work. No need of installing any 3rd party softwares by searching the CD’s or DVD’s. All the softwares which you need to run quickly after installing a OS are inside.

* New Windows Sounds
* No more BSOD error screens
* All Windows Ultimate Extras Integrated
* New Default Theme
* 310 Sidebar Gadgets
* 30 Video Dreamescene Packs
* New Logon Screensaver added
* New Login Screen
* New Look for windows media center
* Registry Tweaks are added( Copy to, Move to, Command Prompt, Take ownership, Encrypt and more)
* Maximum parallel downloads for IE to 20 (Default is 2)
* New Updated graphics card drivers are integrated.
* New Explorer View
* Patched Uxtheme files so u can use any 3rd party themes
* Classic Control Panel
* DirectX Updated
* All Chipset Drivers
* All Printers Drivers (Updated)
* All Graphics card drivers (Updated)
* All Sound Card Drivers (Updated)
* All SCSI-RAID Drivers (Updated)
* All Scanners Drivers
* Resolved some reliability issues in the USB core components
* Added hotfix for resolving some performance and reliability issues
* Improved the reliability of Windows Media Player
* Resolved an issue where messages become stuck in the Outbox and cannot be deleted when using
Windows Mail
* Resolved a set of known application compatibility issues

Drivers Which are missed in Vista by default are fixed:

* Graphics card drivers for
Intel(R) G31 Express Chipset
Intel(R) G33 Express Chipset
Intel(R) G35 Express Chipset
Intel(R) G965 Express Chipset
Intel(R) Q33 Express Chipset
Intel(R) Q35 Express Chipset
Intel(R) Q963 Express Chipset
Intel(R) Q965 Express Chipset
Intel(R) 4 Series Internal Chipset
Intel(R) Q45/Q43 Express Chipset
Intel(R) Q45/Q43 Express Chipset
Intel(R) G45/G43 Express Chipset
Intel(R) G45/G43 Express Chipset
Intel(R) G41 Express Chipset
Mobile Intel(R) 45 Express Chipset Family
Mobile Intel(R) GL960 Express Chipset
Mobile Intel(R) GLE960 Express Chipset
Mobile Intel(R) GM965 Express Chipset
Mobile Intel(R) GME965 Express Chipset

For other models which is lower than these models wil be automatically installed by default.

* Graphics card drivers for
NVIDIA GeForce 9800 GX2
NVIDIA GeForce 9800 GTX
NVIDIA GeForce 9600 GT
NVIDIA GeForce 9600 GSO
NVIDIA GeForce 9400 GT
NVIDIA GeForce 9300 GS
NVIDIA GeForce 9300 GE
NVIDIA GeForce 8800 Ultra
NVIDIA GeForce 8800 GTX
NVIDIA GeForce 8800 GTS 512
NVIDIA GeForce 8800 GTS
NVIDIA GeForce 8800 GT
NVIDIA GeForce 8800 GS
NVIDIA GeForce 8600 GTS
NVIDIA GeForce 8600 GT
NVIDIA GeForce 8600 GS
NVIDIA GeForce 8500 GT
NVIDIA GeForce 8400 GS
NVIDIA GeForce 8400 SE
NVIDIA GeForce 8400
NVIDIA GeForce 8300 GS
NVIDIA GeForce 8300
NVIDIA GeForce 8200
NVIDIA GeForce 8200/NVIDIA nForce 730a
NVIDIA GeForce 8100/NVIDIA nForce 720a
NVIDIA GeForce 7950 GX2
NVIDIA GeForce 7950 GT
NVIDIA GeForce 7900 GTX
NVIDIA GeForce 7900 GT/GTO
NVIDIA GeForce 7900 GS
NVIDIA GeForce 7800 SLI
NVIDIA GeForce 7800 GTX
NVIDIA GeForce 7800 GT
NVIDIA GeForce 7800 GS
NVIDIA GeForce 7650 GS
NVIDIA GeForce 7600 GT
NVIDIA GeForce 7600 GS
NVIDIA GeForce 7600 LE
NVIDIA GeForce 7500 LE
NVIDIA GeForce 7350 LE
NVIDIA GeForce 7300 SE
NVIDIA GeForce 7300 LE
NVIDIA GeForce 7300 GT
NVIDIA GeForce 7300 GS
NVIDIA GeForce 7200 GS
NVIDIA GeForce 7100 GS
NVIDIA GeForce 7150 / NVIDIA nForce 630i
NVIDIA GeForce 7100 / NVIDIA nForce 630i
NVIDIA GeForce 7100 / NVIDIA nForce 620i
NVIDIA GeForce 7050 / NVIDIA nForce 630i
NVIDIA GeForce 7050 / NVIDIA nForce 610i
NVIDIA GeForce 7050 PV / NVIDIA nForce 630a
NVIDIA GeForce 7025 / NVIDIA nForce 630a
NVIDIA GeForce 6800 XT
NVIDIA GeForce 6800 XE
NVIDIA GeForce 6800 Ultra
NVIDIA GeForce 6800 Series GPU
NVIDIA GeForce 6800 LE
NVIDIA GeForce 6800 GT
NVIDIA GeForce 6800 GS/XT
NVIDIA GeForce 6800 GS
NVIDIA GeForce 6800
NVIDIA GeForce 6700 XL
NVIDIA GeForce 6610 XL
NVIDIA GeForce 6600 VE
NVIDIA GeForce 6600 LE
NVIDIA GeForce 6600 GT
NVIDIA GeForce 6600
NVIDIA GeForce 6500
NVIDIA GeForce 6250
NVIDIA GeForce 6200SE TurboCache™
NVIDIA GeForce 6200 TurboCache™
NVIDIA GeForce 6200 LE
NVIDIA GeForce 6200 A-LE
NVIDIA GeForce 6200
NVIDIA GeForce 6150SE nForce 430
NVIDIA GeForce 6150 LE
NVIDIA GeForce 6150
NVIDIA GeForce 6100 nForce 420
NVIDIA GeForce 6100 nForce 405
NVIDIA GeForce 6100 nForce 400
NVIDIA GeForce 6100

Note: I did not included graphics driver for NVIDIA Geforce 200 series because the drivers is still in Beta lol.


Programs:

* 7-Zip
* Mozilla
* K-Lite Codecs 3.95 Full
* System Utilities
* Image Burn
* CCleaner
* Office 2003
* Vista Codecs
* XVID codecs
* Dolby Digital Surround Plugins
* Cyberlink Power DVD 8
* Avast Professional Edition v4.8
* Damn NFO Viewer
* Spyware Doctor v5.5
* Zoner Photo Studio 10
* Power ISO 4
* Yahoo messenger for Vista Black
* Ashampoo Music Studio
* Screen Capture
* Star Codecs
* Norton Ghost 14
* Ultra ISO 9
* Real Player 11 Gold Plus
* All Codecs for Windows Media Player 2008


Protected Message:
Code:
http://www.filefactory.com/file/777859/n/blacbe_part01_rar
http://www.filefactory.com/file/df868e/n/blacbe_part02_rar
http://www.filefactory.com/file/d6500f/n/blacbe_part03_rar
http://www.filefactory.com/file/1c9214/n/blacbe_part04_rar
http://www.filefactory.com/file/e8ae27/n/blacbe_part05_rar
http://www.filefactory.com/file/5c4c48/n/blacbe_part06_rar
http://www.filefactory.com/file/95d3c6/n/blacbe_part07_rar
http://www.filefactory.com/file/8ae292/n/blacbe_part08_rar
http://www.filefactory.com/file/ac2d5f/n/blacbe_part09_rar
http://www.filefactory.com/file/e89d71/n/blacbe_part10_rar
http://www.filefactory.com/file/eeeeba/n/blacbe_part11_rar
http://www.filefactory.com/file/8b9454/n/blacbe_part12_rar
http://www.filefactory.com/file/f9800e/n/blacbe_part13_rar
http://www.filefactory.com/file/c3c850/n/blacbe_part14_rar
http://www.filefactory.com/file/e2ae75/n/blacbe_part15_rar
http://www.filefactory.com/file/4a923e/n/blacbe_part16_rar
http://www.filefactory.com/file/03e714/n/blacbe_part17_rar
http://www.filefactory.com/file/3b95a1/n/blacbe_part18_rar
http://www.filefactory.com/file/acfa90/n/blacbe_part19_rar
http://www.filefactory.com/file/68fda9/n/blacbe_part20_rar
http://www.filefactory.com/file/ee8cfe/n/blacbe_part21_rar

Protected Message:
Code: NOT ALLOWED

Protected Message:
Code: warez_ben

Speaking Notepad

Speaking Notepad is handy text editor with powerful text-to-speech capabilities. Speaking Notepad will read your TXT, DOC, PDF, HTML and RTF documents with SAPI4 and SAPI5-compliant high quality voices, different speed and pitches, read clipboard content, record texts into WAV, MP3 or WMA files and even read every word or sentence you are typing.

Platform: Windows 98/Me/2000/XP/2003
Download size: 5.00 MB

Protected Message:
Code:
http://rapidshare.com/files/142844836/speakingnotepad_downarchive.rar


Crack: (Just copy and past files to installed directory)
Protected Message:
Code:
http://www.mediafire.com/?mdhoyltimug

Adobe press free book download link

Download link is given at the end of the names.
Adobe.Press,.Adobe.Acrobat.7.Tips.and.Tricks.The.150.Best.(2005).LiB.LotB.chm
Adobe.Press,.Adobe.GoLive.CS2.Official.JavaScript.Reference.(2005).BBL.LotB.chm
Adobe.Press,.Adobe.InDesign.CS2.Official.JavaScript.Reference.(2005).BBL.LotB.chm
Adobe.Press,.Adobe.Photoshop.CS2.Official.JavaScript.Reference.(2005).BBL.LotB.chm
Adobe.Press,.Adobe.Premiere.Elements.2.0.Classroom.in.a.Book.(2005).BBL.LoB.chm
Adobe.Press.25.Things.to.Make.and.Do.in.Adobe.Photoshop.Elements.4.Oct.2005.chm
Adobe.Press.Adobe.Acrobat.7.0.Classroom.in.a.Book.Feb.2005.chm
Adobe.Press.Adobe.After.Effects.6.5.Studio.Techniques.Apr.2005.chm
Adobe.Press.Adobe.After.Effects.7.0.Classroom.in.a.Book.Feb.2006.chm
Adobe.Press.Adobe.After.Effects.7.0.Studio.Techniques.May.2006.chm
Adobe.Press.Adobe.Audition.2.0.Classroom.in.a.Book.Apr.2006.chm
Adobe.Press.Adobe.Creative.Suite.2.Classroom.in.a.Book.Jul.2005.chm
Adobe.Press.Adobe.Creative.Suite.2.How.Tos.100.Essential.Techniques.Dec.2005.chm
Adobe.Press.Adobe.GoLive.CS2.Classroom.in.a.Book.Nov.2005.chm
Adobe.Press.Adobe.GoLive.CS2.Tips.and.Tricks.May.2005.chm
Adobe.Press.Adobe.Illustrator.CS2.Classroom.in.a.Book.chm
Adobe.Press.Adobe.Illustrator.CS2.Official.JavaScript.Reference.Oct.2005.chm
Adobe.Press.Adobe.InDesign.CS2.Classroom.in.a.Book.chm
Adobe.Press.Adobe.InDesign.CS2.How.Tos.100.Essential.Techniques.Mar.2006.chm
Adobe.Press.Adobe.Photoshop.CS2.Classroom.in.a.Book.May.2005.chm
Adobe.Press.Adobe.Photoshop.CS2.Studio.Techniques.Aug.2005.eBook-DDU.chm
Adobe.Press.Adobe.Premiere.Pro.2.0.Classroom.in.a.Book.Feb.2006.chm
Adobe.Press.Adobe.Premiere.Pro.2.0.Studio.Techniques.Jun.2006.chm
Adobe.Press.Adobe.Reader.7.Revealed.Working.Effectively.with.Acrobat.PDF.Files.Feb.2005.chm
Adobe.Press.InDesign.Type.Professional.Typography.with.Adobe.InDesign.CS2.Mar.2006.chm
Adobe.Press.Working.Smart.in.Adobe.Photoshop.CS2.Sep.2006.chm
http://www.chmpdf.com/archives/ebooks/adobe press/

Make frame in HTML

With frames, you can display more than one Web page in the same browser window.


Examples

Vertical frameset
This example demonstrates how to make a vertical frameset with three different documents.

Horizontal frameset
This example demonstrates how to make a horizontal frameset with three different documents.

(You can find more examples at the bottom of this page)


Frames

With frames, you can display more than one HTML document in the same browser window. Each HTML document is called a frame, and each frame is independent of the others.

The disadvantages of using frames are:

  • The web developer must keep track of more HTML documents
  • It is difficult to print the entire page

The Frameset Tag

  • The tag defines how to divide the window into frames
  • Each frameset defines a set of rows or columns
  • The values of the rows/columns indicate the amount of screen area each row/column will occupy

The Frame Tag

  • The tag defines what HTML document to put into each frame

In the example below we have a frameset with two columns. The first column is set to 25% of the width of the browser window. The second column is set to 75% of the width of the browser window. The HTML document "frame_a.htm" is put into the first column, and the HTML document "frame_b.htm" is put into the second column:






Note: The frameset column size value can also be set in pixels (cols="200,500"), and one of the columns can be set to use the remaining space (cols="25%,*").


Basic Notes - Useful Tips

If a frame has visible borders, the user can resize it by dragging the border. To prevent a user from doing this, you can add noresize="noresize" to the tag.

Pinnacle Studio 10 for Windows : Visual QuickStart Guide

Pinnacle Studio 10 is the latest version of the industry leading home video editing tool aimed at the Windows consumer market. In Pinnacle Studio 10 for Windows: Visual QuickStart Guide, veteran journalist and teacher Jan Ozer tackles Pinnacle Studio version 10 in classic and popular QuickStart style–with step-by-step instructions, plenty of illustrations, and straightforward language. Jan provides the skinny on all popular Studio 10 features like built-in DVD authoring with motion menus and custom navigation; Pan and Zoom, enabling users to quickly create engaging video slideshows from digital photos; SmartMovie II, a tool that let’s you create home movies in minutes; dual monitor display; key framing special effects in real-time; and the Instant DVD Recorder. He also covers key Pinnacle Studio Plus 10 features including picture in picture (PIP); Chroma Key effects (green screen); and full HD editing, particularly creating HD slide shows from digital photos.

Download Here :

http://rapidshare.de/files/25039302/Pinnacle_Studio_10_for_Windows_Visual_QuickStart_Guide_-Peachpit_Press.part1.rar
http://rapidshare.de/files/25040309/Pinnacle_Studio_10_for_Windows_Visual_QuickStart_Guide_-Peachpit_Press.part2.rar
Password: www.ebooksportal.org

Adobe Photoshop Lightroom Ebook

download
High-res:
http://www.adobe.com/designcenter/lightroom/pdfs/lightroom_gettingstarted_full.pdf
Low-res:
http://www.adobe.com/designcenter/lightroom/pdfs/lightroom_gettingstarted_lo.pdf

Direct X changer

Direct X changer
The program is intended for carrying out of various actions with versions DirectX. The program can change version DirectX for any another without restart of OS. For example, this program will allow starting many old games and if to establish package DirectX10 for XP, also many new games. And if suddenly OS after changes of version DirectX began to work stably always it is possible to return to DirectX 9.

system requirements :
KMDXC runs on Windows XP or Later

Minimum hardware requirements

* Intel Pentium® or AMD K5 processor with 266 MHz
* 5 MB free hard disk space

* 32 MB RAM
* Video Card with support DirectX 7 or later


Software requirements
KMDXC has been tested on the following platforms:

* Windows XP Professional SP2, SP3
* Windows Vista Home Premium/Ultimate
* Windows 7 Milestone 1 build 6519

Protected Message:
Code:
http://rapidshare.com/files/147062188/kmdxc.zip.html

9.22.2008

Microsoft Project VBA Reference Material

If you are interested in Project VBA you can now find a chapter I wrote on Project VBA for Que Publishing online here.

It goes through the basics of working with the visual basic editor, debugging, and gives several code examples. I'm a bit surprised to find it free on the internet from the publisher so go get it while it is still there.

Even though the chapter is about Project 2002, the information should apply to Project 2000 and Project 2003. There have not been many changes except to events. Just looking at this:

"When you have code with a large number of steps and you know only the initial state and the outcome, it is difficult to figure out where the root of your problem lies. The VBE provides the ability to view your code as it executes and to check the values of your variables. The main tools to do this are breakpoints, watches, and the Immediate window.

reminds me that I should put together a few posts on debugging...

Microsoft Project VBA Reference Material

If you are interested in Project VBA you can now find a chapter I wrote on Project VBA for Que Publishing online here.

It goes through the basics of working with the visual basic editor, debugging, and gives several code examples. I'm a bit surprised to find it free on the internet from the publisher so go get it while it is still there.

Even though the chapter is about Project 2002, the information should apply to Project 2000 and Project 2003. There have not been many changes except to events. Just looking at this:

"When you have code with a large number of steps and you know only the initial state and the outcome, it is difficult to figure out where the root of your problem lies. The VBE provides the ability to view your code as it executes and to check the values of your variables. The main tools to do this are breakpoints, watches, and the Immediate window.

reminds me that I should put together a few posts on debugging...

VBA - Integer Division and Mod

Many Microsoft Project users are not professional programmers so they might not be aware of some of the basics of visual basic. One of them which surprised me when I first ran across it was the "integer division" operator. Now most people know the typical add + , subtract -, multiply *, and divide / operators and what results they bring. But there are really two more which are quite useful in certain situations.

The first is the integer division operator which is a backslash "\". Do not confuse this with the forward slash "/" which is used for regular division. The results of this operator are that division takes place as usual except any non-integer remainder is discarded. Here are a couple of examples to illustrate.

10/4 = 2.5
10\4 = 2

5.423/1 = 5.423
5.423\1 = 5

As you can probably guess, integer division is a handy way of dividing and rounding down in a single step.

Another related operator is the MOD operator. It is similar to integer division only it returns only the remainder. Here are a couple of examples.

6 MOD 4 = 2
12 MOD 4 = 0

By putting them together you can break numbers into their component parts. Doing date math is an easy way to see how this works. Let's let "Days" be a number of days. We want to know how many weeks and how many days it is. The following formula would return how many weeks and how many days there are in that amount of time.

Days\7 & " Weeks, " & Days MOD 7 & " Days"

If Days is 23 days, then the result would be:

3 Weeks, 2 Days

Recursion in Project VBA

The Fifth in a Series of Short Notes about Using Project VBA

Recursion is a programming techique which is similar to the process of taking a video of your television when the television is displaying the video output of your video camera. The result - an endless tunnel of pictures of your television.

So how can this be useful in programming, and more specifically in programming Microsoft Project? Well, recursion is also well suited for dealing with parent/child relationships or dependencies, both of which are essential parts of Project. Recursion allows you to easily get the subtasks of the subtasks of the subtask of a task and because it continues indefinitely (or until it hits a limit) it will get to the last task in the project without you having to keep track of how many levels deep it needs to go.

It can be difficult to grasp the concept without a concrete example so let's start with one right away and explain the details as we go along. Let's say that you have a number of tasks which may be viewed individually (perhaps in project server) and they will no longer show the heirarchy which is in the file. Some may even have the same name as each other, just like you can have two John's who are unrelated and different. The solution to this confusion is to use a text field to show the entire path to the task. That path is made up of all the names of the parent tasks of the individual task.

One way to do this is brute force:

Dim mytask As Task
Dim myoutlinelevel As Integer
myoutlinelevel = 1
While myoutlinelevel < 10
For Each mytask In ActiveProject.Tasks
If Not (mytask Is Nothing) Then
If mytask.OutlineLevel = myoutlinelevel Then
mytask.Text2 = mytask.OutlineParent.Text2 & " | " & mytask.Name
End If
End If
Next mytask
myoutlinelevel = myoutlinelevel + 1
Wend
End Sub

The trouble with this approach is that it runs through the entire set of tasks one time for each level of heirarchy that you want to name. And, you have to define how many levels deep you want to go. Even if you have only one level of heirarchy this code will still read and check each task 10 times. And if you have more than 10 levels, the tasks beyond the 10th level will not get labeled correctly.

The solution is to use recursion. With recursion we ask the program to name all the children of a task and then name all the children of that task all the way down until there are no more children. We do this by having a procedure which calls itself. Here we are using a procedure called "kids" which calls the same procedure for all of the child tasks - when it runs using those child tasks it will get all their child tasks etc. etc. etc.

Sub kids(ByRef t As Task)
Dim kid As Task
t.Text2 = t.OutlineParent.Text2 & " | " & t.Name
For Each kid In t.OutlineChildren
kids kid
Next kid
End Sub

Pretty simple. Now the only question is how to get it started off. We can't put the code to start it inside the procedure or it will keep restarting itself. So we write a procedure which sets the starting task and then calls the kids procedure:

Sub recursionExample()
Dim t As Task
Set t = ActiveSelection.Tasks(1)
kids t
End Sub

Sub kids(ByRef t As Task)
Dim kid As Task
t.Text2 = t.OutlineParent.Text2 & "-" & t.Name
For Each kid In t.OutlineChildren
kids kid
Next kid
End Sub

That is all there is to it. I have an example of how recursive techniques can be used to trace dependencies on my website which adds some additional logic so it can trace forward or backward or only critical tasks, but the basic principle is the same.

One thing to be aware of before you use recursion is that whatever you are recursing through does require some limit or stopping point. In this case it stops when there are no further children. In the Trace macro it stops at the end of the chain of dependencies. However, if you are not careful you can construct something that will continue indefinitely. To avoid this, try setting a breakpoint so you can step through the code the first few times to make sure it doesn't break. And always back up your files before you start.

Working with Custom Field Formulas

The Fourth in a Series of Short Notes about Using Project VBA

Technically the formulas in customized fields are not VBA, but they are quite similar. With Project 2000 Microsoft added the capability to have a field display the results of a user-defined calculation. Until then, fields would only contain the value that the user put there. Needless to say, having the ability to have formulas was a big step forward. In fact, in some cases formulas are more useful than VBA macros are. The main reason is that they calculate automatically whereas a VBA macro needs to be executed either by calling the macro or tying it to some event (and events in Project are not what I'd consider robust). Because of this the field can display real-time information about a task.

Formulas in fields can with a little work control the formatting of your schedule as well. With a formula setting the value of a flag field, and a bar style which applies to tasks with that flag field set to "Yes" you can change what the gantt chart displays. There are also indicators which can be shown in the specific cells if the formula returns a particular value.

Of course there are some limitations to these formulas. They can only work with information from the particular task they are associated with and a handful of Project-level fields (Things like Project Start). In cases where you need information from other tasks a formula is not going to be sufficient. I've put together some guidelines about choosing one over the other. You can find them here.

Working with Formulas is pretty simple, but they are hidden rather deep in the interface. To get to them, right-click on a column header, choose customize fields, then choose the field you want the formula to apply to and click on the "formula" button. This brings up a dialog box where you can enter and edit the formula. Note that the = sign which is required for formulas in Excel is NOT REQUIRED and if you enter one you will get an error. After you have written the formula choose OK and you get back to the customize fields screen. At this point you have one more decision to make, you can decide whether the Summary tasks use the formula or not. The default is to not use the formula so be careful here if you want them to use the same calculation.

The variety of formulas is huge but here are some common situations people encounter in using formulas:

My formula refers to Baseline or Deadline fields.
When there is "NA" in the baseline or deadline it gives an error:

This problem is caused by the fact that the project gives a numerical value of 4294967296 (2 to the 32nd power - 1) if the field is "NA" (blank). Why it does this rather than giving a value of 0 I do not know, however once you know that it uses this number you can write a formula which accounts for it.

The solution is to use an iif statement. The syntax for an iif statement is as follows:

iif(expression, value if true, value if false)

So if you want to know if the difference between the baseline finish and the finish of a task you would use a formula like this (in a text field):

Iif([Baseline Finish] > 50000, "There is no baseline for this task", [Baseline Finish]-[Finish])

Another alternative is to use ProjDateValue to evaluate the data stored in the baseline. Since an empty baseline shows "NA" for dates such as Baseline Finish, you can test for it directly.

iif([Baseline Finish]=projdatevalue("NA"), "Has Baseline", "No, Baseline")


I am getting unexpected values when using work or duration in my formula.

The problem is usually caused by failing to convert the units correctly.
When you use duration or work in a formula Project uses the value of either in MINUTES. This can be confusing if you are subtracting a duration of 1 day from a duration of 2 days. You would expect that 2 - 1 = 1, but in Project it equals 480 minutes.

Now you may wonder why 480 minutes? There are 24 hours in a day x 60 minutes, however by default a Project day is 8 hours or 480 minutes. One easy way to handle this is to simply divide by 480 as in this example.

([Baseline Duration]-[Duration])/480 & " days"

You will then get the difference in days (note that using the & will concatenate the text within quotations to the result of the first part of the equation).
However there are times that a different project calendar is used and in that case a day may be defined as 24 hours or 7 hours. Because of this it is safer practice to use the constant [Minutes Per Day] or [Minutes Per Week] in the formula.

([Baseline Duration]-[Duration])/[Minutes Per Day] & " days"

I want to subtract one date from another in Project.

There are a number of ways to do date subtraction. The first is to simply subtract one from the other like this:

[Finish]-[Start]

On a one day task which starts and ends the same day this will return a value of .38 which is somewhat useful, but as in the section above it takes some conversion to make
sense of it. .38 days = 8 hours.
This approach also has some problems if you are subtracting across a non-working time such as a weekend or holiday. Or if the task ends on the next day. Then the value will be quite unexpected.

So there is another method that Project provides to do date math. It is to use the ProjDateDiff function. The syntax is as follows:

ProjDateDiff( date1, date2, calendar )

Using this will give you the difference between two dates according to a specific Project calendar. If you leave the calendar blank then it uses the Standard calendar. Otherwise you can specify the calendar (put the name of the calendar in quotations).
Here is an example of a calculation which finds the difference between the start and the finish of a task:

ProjDateDiff([Start],[Finish])

Note that the field order is different than the original equation. For a positive result you put the soonest date as the first parameter and the latest date as the second.

Working with Other Applications

The Third in a Series of Short Notes About Using Project VBA

Project is designed primarily for calculating schedules using the Critical Path Method (CPM). However, there are often times you need to do more advanced calculations than are available natively in Project. The easiest solution is to turn to another application to do the calculations or to work with the resulting data.

An example of this is the use of Excel. It is actually quite simple to do this. The first thing to do is to set a reference to Excel. You do this by:

Opening Project.
Hit ALT+F11 to open the Visual Basic Editor.
From the Tools menu select "References".
Scroll down until you see the Microsoft Excel Object Library (or something similar).
Make sure the box next to it is checked.

Once that is complete you simply create a new instance of Excel and add a worksheet if necessary.

If xlApp Is Nothing Then
'Start new instance
Set xlApp = CreateObject("Excel.Application")
If xlApp Is Nothing Then
MsgBox "Can't Find Excel, please try again.", vbCritical
End 'Stop, can't proceed without Excel
End If

Else
Set xlR = Nothing
Set xlApp = Nothing
Set xlBook = Nothing
Set xlApp = CreateObject("Excel.Application")
If xlApp Is Nothing Then
MsgBox "Can't Find Excel, please try again.", vbCritical
End 'Stop, can't proceed without Excel
End If

End If
xlapp.Visible = False
Set xlBook = xlapp.Workbooks.Add
Set xlSheet = xlBook.Worksheets.Add
xlSheet.Name = ActiveProject.Name

I use CreateObject here rather than GetObject based on Microsoft's recommendation in this article. If you use GetObject you may get this error:

Run-time error '429':
ActiveX component can't create object

Once that is done you can use any of the Excel VBA you need to manipulate data, format it or anything else. The following code is from a Monte Carlo simulation macro I wrote. You can find the complete thing here. What this code does is set the value of xlRow (actually a specific cell in Excel) to the value of the task finish. Then it shifts to the next cell down using the offset function.

For Each t In exportedTasks
xlRow = t.Finish
Set xlRow = xlRow.Offset(0, 1)
Next t

Once you have Excel running you can do just about anything you want with it. With a bit more code, the macro this was taken from could summarize the data and graph it. By using the two tools together you can do many things which would be difficult to do alone. I have a few other simple examples here. Be forewarned that they do not use the GetObject method. Sooner or later I'll revise them to reflect what I now know more about.

Working with the Project Object

The Second in a Series of Short Notes About Using Project VBA

Using a Project object of some kind is essential to programming Project. Like the Task object, it is also a member of a collection, in this case it is part of the Projects collection. Although the Projects collection is under the Application it is what Microsoft calls a "top-level object" meaning that you can use it without needing to specify the Application. This means both of the following are equivalent within Project (though if you are controlling project from another application you will want to specify the application just to be clear):

Application.Projects
is the same as:
Projects

The Project object I use most often is the ActiveProject. ActiveProject is simply the project you are currently working on in project. If you have multiple projects open then it is the one which is in front and which has the cursor active in it. Most of the time you want your code to operate on the ActiveProject and not some other project so code typically looks like this:

Set ts as ActiveProject.Tasks

There are cases where you DO want to work on all the projects that are open. In this case you would forgo using ActiveProject and refer to them individually. You can use For..Next to go through all of the open projects:

For Each Project In Application.Projects
'run subprocedure
Next Project

The Project object can refer to any project and you can define as many as you like. This can be useful when you want to compare a project which is open with another.

Dim proj1 as Project
Dim proj2 As Project
Set proj1 = ActiveProject
Set proj2 = FileOpen("c:\myfilename.mpp")
If proj2.Tasks(5).Finish = proj1.Tasks(5).Finish Then
msgbox "Task 5 is unchanged."
End if
End Sub

You can use an index to refer to a specific project, though the index of the project is dependent on the order in which the files were opened, so there is room for some surprises here:

Set proj1 = Application.Projects(1)
Set proj2 = Application.Projects(2)

There is another interesting type of Project and that is the SubProject. Subprojects are any projects inserted in a "Master" project. Sometimes it is necessary to go through them as well. An example is setting a particular view or modifying some information which can not be done in the "Master" view.

Dim subproj As Subproject
Dim myproj As Project
'go through all the subprojects in the file
For Each subproj In ActiveProject.Subprojects
'open them all in turn
FileOpen (subproj.Path)
Set myproj = ActiveProject
'when open do something to the file
FileClose
Next subproj

The Projects collection has a small number of properties including count, parent and item. It also has a method to add a project. Project and SubProject have too many properties to describe here, but eventually I'll get around to covering some of the more interesting ones.

Working with the Tasks Collection

The First in a Series of Short Notes About Using Project VBA

The tasks collection is simply a collection of all the tasks in a project. It is the starting point for most Visual Basic programming exercises so it is important to know how to use it. The first thing is in how to set it. This is done using the Set keyword.
Typically one sets a collection to all the tasks in the project, but it is possible to set it to some other task collection.

Here is an example of setting it to the tasks in the active project:

Dim ts as Tasks
Set ts = ActiveProject.Tasks

Another useful trick is to filter the project first and then set the task collection to the set of filtered tasks:

SelectAll
Set ts = ActiveSelection.Tasks

Once we have the task collection we can go through it in a number of ways. If we want a specific task we can ask for it by index. For example if we want the first task the code would be:

Dim t as task
Set t = ts(1)

Quite often we want to do something to all tasks in the project. In that case we would set the task collection as above and then loop through it using a for..next structure:

For Each t in ts
t.Text5 = "Foo"
Next t

This approach works until you hit a blank line in the project. In the case of the blank line the task is what Project refers to as "Nothing". You can do nothing with Nothing, so setting the Text5 value for Nothing will give you an error. Luckily you can check to see if a task is Nothing and therefore skip doing anything that would cause an error and stop your code. To do this we add a simple If statement:

For Each t in ts
If not t is Nothing then
t.Text5 = "Foo"
End If
Next t

We can do a similar thing to ignore summary tasks. You might want to do this when altering a value like duration which is not something that you can edit directly for a summary task. I use something like this:

If not t.Summary Then
'do stuff
End If

Putting it all together we have this generic structure to loop through all tasks in a project:

Dim ts as Tasks
Dim t as Task
Set ts = ActiveProject.Tasks
For Each t in ts
If Not t is Nothing Then
If Not t.Summary Then
'do something
End If
End If
Next t

By putting your code in the middle of this structure (where it says "do something" you can be sure it will be applied to all the regular tasks in the project and won't generate an error when it hits a blank line.

How to be a TOP RANK BLOG

This are some tips how to raise your blog and how to become a top rank blog in top rank search engine:
1. Ping your blog
2. Give comments to other blog owner(please don't give unusual comments,give comments which are related with the posting),at the end of the comment give your blog address so the blog owner can visit your blog
3. Every time you send an email,you can publish your blog address at the end of your email.
4. Join a blog's forum,so you can introduce your blog there,and give some details what your blog talking about.
5. Join a favorite forum,like yahoo-groups,friendster,facebook,and many more.
6. Give a interesting keywords.

These are a lil bit tips how to raise your website or blog rank.

Free Download MP3

I suggest you www.mp3dl.co.cc
Always free,without having an account.

9.11.2008

Programming Language



A vocabulary and set of grammatical rules for instructing a computer to perform specific tasks. The term programming language usually refers to high-level languages, such as BASIC, C, C++, COBOL, FORTRAN, Ada, and Pascal. Each language has a unique set of keywords (words that it understands) and a special syntax for organizing program instructions.


High-level programming languages, while simple compared to human languages, are more complex than the languages the computer actually understands, called machine languages. Each different type of CPU has its own unique machine language.

Lying between machine languages and high-level languages are languages called assembly languages. Assembly languages are similar to machine languages, but they are much easier to program in because they allow a programmer to substitute names for numbers. Machine languages consist of numbers only.

Lying above high-level languages are languages called fourth-generation languages (usually abbreviated 4GL). 4GLs are far removed from machine languages and represent the class of computer languages closest to human languages.

Regardless of what language you use, you eventually need to convert your program into machine language so that the computer can understand it. There are two ways to do this:

  • Compile the program
  • Interpret the program

See compile and interpreter for more information about these two methods.

The question of which language is best is one that consumes a lot of time and energy among computer professionals. Every language has its strengths and weaknesses. For example, FORTRAN is a particularly good language for processing numerical data, but it does not lend itself very well to organizing large programs. Pascal is very good for writing well-structured and readable programs, but it is not as flexible as the C programming language. C++ embodies powerful object-oriented features, but it is complex and difficult to learn.

The choice of which language to use depends on the type of computer the program is to run on, what sort of program it is, and the expertise of the programmer.

How to Become a Programmer

Unlike what you might find in some books and articles, programming can not be actually learned in 7, 21 or even 365 days. It is an accumulative process that builds up your skills day after day and year after year. However, programming can also be fun and rewarding (both mentally, spiritually and financially). This guide does not promise to give a magical easy way to becoming a programmer, and the ordering of the steps is not sacred, but you'll get a general outline of how to become a programmer in one of the modern programming fields.

Step:


  1. Prepare yourself for becoming a programmer:

    1. Take at least one introductory course in Mathematics (i.e. introductory calculus as it significantly improves your experience as a programmer).

    2. Take an introductory course in logic, discrete Mathematics or both.

    3. Learn at least one of the following program conception techniques. As you advance in programming you'll need to learn almost all of them. The methods are listed in the most often used order.

      • Flow Charting (globally considered the easiest to learn)

      • Pseudo-Code

      • Unified Modeling Language (UML)

      • Object Relational Mapping (ORM)

    4. Learn simple database concepts such as tables, views/queries and procedures. You can use any simple database package to do this, such as MS access, DB V, Fox Pro, Paradox.

    5. Learn about programming paradigms (an introduction is enough for now), the most important being procedural, object oriented, functional, logic and declarative programming.

  2. Decide what type of programmer you are/want to be. Programmers generally fall under one of the following categories:

    • Web Programmer

    • Desktop Application Programmer

      • Operating System (OS) Oriented (tied to a single operating system or set of operating systems)

      • Platform Independent

    • Distributed Applications Programmer

    • Library/Platform/Framework/Core Programmer

    • System Programmer

      • Kernel Programmer

      • Driver Programmer

      • Compiler Programmer

    • Programming Scientist

  3. Learn the technologies and programming languages related to your programming field of choice. The following sections break down the tasks for different types of programming.

last-Samu1241's Blog © 2008. Template by Dicas Blogger.

TOPO