I don't understand the options under "which part to snap onto the target"
First of all, I prefer to think of snapping a 'Source' (the moving element) to a 'Target' (the stationary element), so I wish this menu was called 'Snap Source'


'Active' When you make a selection of elements, the last one selected becomes the 'Active' element. In Object Mode, that will be the last selected object. In Edit Mode, that will be the last selected face, edge or vertex. For the purposes of snapping, The position of an Object is its pivot point. The position of an Edge or Face is the median point of its vertices, and the position of a Vertex is, well, itself. When moving a selection containing an Active element, only the position of the active element will be considered a possible snap source.
'Closest' This, to my mind, is the most confusing of the options. It seems to me to be the closest element of a selection to the target, in the constraint direction, before the transformation was initiated. For example, if you translate a selection constrained to X (GX) then whichever element was closest to the target you're hovering over, in X, before you started moving, will be considered the source.
'Median' This will consider the average (arithmetic mean) position of the elements to be the snap source. In Object Mode, that will be the average position of the pivot points; in Edit mode, of the vertices in the selected elements. It is an average. For example, if your selection contains two identically located objects amongst others, the source position will be weighted more towards those objects.
'Center' This uses the Transform Center, as defined when you select the pivot point for your transformation, as the source position. It's where the manipulator appears when you start your move, rotation, or scale. It's most useful with the 3D Cursor: We'll use it to move your windows.


How to snap your windows? Assuming the worst case, (No conveniently aligned pivot points, median points, or anything), assuming you've got vertices you would like to coincide, and assuming you want to move your windows in Object Mode.


Go into Edit Mode on one of your windows, and select a vertex which you know you will want to be coincident with a vertex in the target frames.
ShiftS, select '3D Cursor to Selected'
Set your Transform Pivot Point to '3D Cursor'
Set your snap to 'Snap To' 'Vertex' and 'Snap Target' (source!) 'Center'.
In Object mode, select all the windows, and G, free translate them until the transform center snaps to the appropriate target vertex.