1
unit Main;
2![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
interface
4![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
uses
6
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
7
DirectShow, ExtCtrls, Buttons, ActiveX;
8![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
const
10
WM_GraphNotify = WM_App+1;
11![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
12
type
13
TMainForm = class(TForm)
14
DisplayPanel: TPanel;
15
SpeedButton1: TSpeedButton;
16
SpeedButton2: TSpeedButton;
17
SpeedButton3: TSpeedButton;
18
SpeedButton4: TSpeedButton;
19
SpeedButton5: TSpeedButton;
20
SpeedButton6: TSpeedButton;
21
SpeedButton7: TSpeedButton;
22
Image1: TImage;
23
OpenDialog: TOpenDialog;
24
procedure SpeedButton1Click(Sender: TObject);
25
procedure FormCreate(Sender: TObject);
26
procedure FormDestroy(Sender: TObject);
27
procedure DisplayPanelResize(Sender: TObject);
28
procedure SpeedButton2Click(Sender: TObject);
29
procedure SpeedButton3Click(Sender: TObject);
30
procedure SpeedButton4Click(Sender: TObject);
31
procedure SpeedButton5Click(Sender: TObject);
32
procedure SpeedButton6Click(Sender: TObject);
33
procedure SpeedButton7Click(Sender: TObject);
34
private
35
{ Private declarations }
36
protected
37
procedure WMGraphNotify(var Msg: TMessage); message WM_GraphNotify;
38
public
39
{ Public declarations }
40
GraphBuilder: IGraphBuilder;
41
VideoWindow: IVideoWindow;
42
MediaControl: IMediaControl;
43
MediaEvent: IMediaEventEx;
44
MediaSeek: IMediaSeeking;
45
SampleGrabber: ISampleGrabber;
46![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
47
procedure GraphDestory;
48
procedure OpenFile(const FileName: string);
49
procedure Play;
50
procedure Next;
51
procedure Prev;
52
procedure Fast;
53
procedure Slow;
54
procedure SnapShot;
55
end;
56![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
57
var
58
MainForm: TMainForm;
59![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
60
implementation
61![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
62
uses
63
ComObj;
64![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
65
{$R *.DFM}
66![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
67
procedure TMainForm.SpeedButton1Click(Sender: TObject);
68
begin
69
if OpenDialog.Execute then
70
begin
71
GraphDestory;
72
OpenFile(OpenDialog.FileName)
73
end
74
end;
75![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
76
procedure TMainForm.FormCreate(Sender: TObject);
77
begin
78
CoInitialize(nil)
79
end;
80![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
81
procedure TMainForm.FormDestroy(Sender: TObject);
82
begin
83
GraphDestory;
84![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
85
CoUninitialize
86
end;
87![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
88
procedure TMainForm.OpenFile(const FileName: string);
89
var
90
PFileName: array [0..255] of WideChar;
91
Filter: IBaseFilter;
92
MediaType: TAM_MEDIA_TYPE;
93
Intf: IInterface;
94
begin
95
GraphDestory;
96
97
GraphBuilder:=CreateComObject(CLSID_FilterGraph) as IGraphBuilder;
98![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
99
Filter:=CreateComObject(CLSID_SampleGrabber) as IBaseFilter;
100
Filter.QueryInterface(IID_ISampleGrabber, SampleGrabber);
101
GraphBuilder.AddFilter(Filter, 'Grabber');
102
Filter:=nil;
103
ZeroMemory(@MediaType, SizeOf(TAM_MEDIA_TYPE));
104
MediaType.majortype:=MEDIATYPE_Video;
105
MediaType.subtype:=MEDIASUBTYPE_RGB24;
106
MediaType.formattype:=FORMAT_VideoInfo;
107
SampleGrabber.SetMediaType(MediaType);
108
SampleGrabber.SetBufferSamples(True);
109![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
110
StringToWideChar(FileName, PFileName, 255);
111
GraphBuilder.RenderFile(PFileName, nil);
112![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
113
GraphBuilder.QueryInterface(IID_IVideoWindow, VideoWindow);
114
VideoWindow.put_Owner(DisplayPanel.Handle);
115
VideoWindow.put_WindowStyle(WS_CHILD or WS_CLIPSIBLINGS);
116
VideoWindow.put_Visible(True);
117
DisplayPanelResize(nil);
118![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
119
GraphBuilder.QueryInterface(IID_IMediaSeeking, MediaSeek);
120
MediaSeek.SetTimeFormat(Time_Format_Frame);
121![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
122
GraphBuilder.QueryInterface(IID_IMediaControl, MediaControl);
123![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
124
GraphBuilder.QueryInterface(IID_IMediaEventEx, MediaEvent);
125
MediaEvent.SetNotifyWindow(Handle, WM_GraphNotify, 0);
126
end;
127![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
128
procedure TMainForm.GraphDestory;
129
begin
130
if VideoWindow<>nil then
131
begin
132
VideoWindow.put_Visible(False);
133
VideoWindow.put_Owner(0)
134
end;
135
VideoWindow:=nil;
136![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
137
MediaControl:=nil;
138![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
139
MediaEvent:=nil;
140![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
141
GraphBuilder:=nil
142
end;
143![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
144
procedure TMainForm.DisplayPanelResize(Sender: TObject);
145
begin
146
if VideoWindow<>nil then
147
VideoWindow.SetWindowPosition(0, 0, DisplayPanel.Width, DisplayPanel.Height)
148
end;
149![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
150
procedure TMainForm.SpeedButton2Click(Sender: TObject);
151
begin
152
Play
153
end;
154![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
155
procedure TMainForm.WMGraphNotify(var Msg: TMessage);
156
var
157
EventCode: Integer;
158
Param1, Param2: Integer;
159
CurrentPosition, EndPosition: Int64;
160
begin
161
if MediaEvent<>nil then
162
begin
163
while MediaEvent.GetEvent(EventCode, Param1, Param2, 0)=S_OK do
164
begin
165
MediaEvent.FreeEventParams(EventCode, Param1, Param2);
166
if EventCode=EC_Complete then
167
begin
168
if MediaControl<>nil then
169
MediaControl.Stop;
170
if MediaSeek<>nil then
171
begin
172
CurrentPosition:=0;
173
MediaSeek.SetPositions(CurrentPosition,
174
AM_SEEKING_AbsolutePositioning,
175
EndPosition, AM_SEEKING_NoPositioning)
176
end
177
end
178
end
179
end
180
end;
181![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
182
procedure TMainForm.SpeedButton3Click(Sender: TObject);
183
begin
184
Next
185
end;
186![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
187
procedure TMainForm.SpeedButton4Click(Sender: TObject);
188
begin
189
Prev
190
end;
191![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
192
procedure TMainForm.SpeedButton5Click(Sender: TObject);
193
begin
194
Fast
195
end;
196![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
197
procedure TMainForm.SpeedButton6Click(Sender: TObject);
198
begin
199
Slow
200
end;
201![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
202
procedure TMainForm.SpeedButton7Click(Sender: TObject);
203
begin
204
SnapShot
205
end;
206![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
207
procedure TMainForm.Play;
208
begin
209
if MediaControl<>nil then
210
MediaControl.Run
211
end;
212![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
213
procedure TMainForm.Next;
214
var
215
CurrentPosition, EndPosition: Int64;
216
begin
217
if MediaControl<>nil then
218
MediaControl.Pause;
219
if MediaSeek<>nil then
220
begin
221
MediaSeek.GetPositions(CurrentPosition, EndPosition);
222
Inc(CurrentPosition);
223
MediaSeek.SetPositions(CurrentPosition, AM_SEEKING_AbsolutePositioning,
224
EndPosition, AM_SEEKING_NoPositioning)
225
end
226
end;
227![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
228
procedure TMainForm.Prev;
229
var
230
CurrentPosition, EndPosition: Int64;
231
begin
232
if MediaControl<>nil then
233
MediaControl.Pause;
234
if MediaSeek<>nil then
235
begin
236
MediaSeek.GetPositions(CurrentPosition, EndPosition);
237
Dec(CurrentPosition);
238
MediaSeek.SetPositions(CurrentPosition, AM_SEEKING_AbsolutePositioning,
239
EndPosition, AM_SEEKING_NoPositioning)
240
end
241
end;
242![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
243
procedure TMainForm.Fast;
244
begin
245
if MediaSeek<>nil then
246
MediaSeek.SetRate(2)
247
end;
248![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
249
procedure TMainForm.Slow;
250
begin
251
if MediaSeek<>nil then
252
MediaSeek.SetRate(0.125)
253
end;
254![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
255
procedure TMainForm.SnapShot;
256
var
257
MediaType: TAM_MEDIA_TYPE;
258
VideoInfoHeader: TVideoInfoHeader;
259
BitmapInfo: TBitmapInfo;
260
Bitmap: HBitmap;
261
Buffer: Pointer;
262
BufferSize: Integer;
263
begin
264
SampleGrabber.GetConnectedMediaType(MediaType);
265![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
266
ZeroMemory(@VideoInfoHeader, SizeOf(TVideoInfoHeader));
267
CopyMemory(@VideoInfoHeader, MediaType.pbFormat, SizeOf(VideoInfoHeader));
268![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
269
ZeroMemory(@BitmapInfo, SizeOf(TBitmapInfo));
270
CopyMemory(@BitmapInfo, @VideoInfoHeader.bmiHeader, SizeOf(VideoInfoHeader.bmiHeader));
271![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
272
Bitmap:=CreateDIBSection(0, BitmapInfo, DIB_RGB_COLORS, Buffer, 0, 0);
273
SampleGrabber.GetCurrentBuffer(BufferSize, Buffer);
274![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
275
Image1.Picture.Bitmap.Handle:=Bitmap
276
end;
277![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
278
end.
279![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
27
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
28
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
29
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
30
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
31
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
32
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
33
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
34
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
35
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
36
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
37
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
38
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
39
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
40
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
41
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
42
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
43
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
44
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
45
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
46
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
47
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
48
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
49
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
50
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
51
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
52
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
53
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
54
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
55
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
56
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
57
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
58
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
59
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
60
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
61
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
62
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
63
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
64
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
65
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
66
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
67
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
68
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
69
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
70
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
71
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
72
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
73
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
74
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
75
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
76
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
77
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
78
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
79
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
80
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
81
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
82
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
83
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
84
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
85
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
86
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
87
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
88
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
89
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
90
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
91
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
92
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
93
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
94
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
95
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
96
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
97
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
98
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
99
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
100
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
101
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
102
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
103
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
104
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
105
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
106
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
107
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
108
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
109
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
110
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
111
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
112
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
113
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
114
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
115
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
116
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
117
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
118
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
119
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
120
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
121
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
122
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
123
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
124
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
125
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
126
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
127
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
128
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
129
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
130
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
131
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
132
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
133
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
134
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
135
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
136
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
137
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
138
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
139
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
140
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
141
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
142
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
143
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
144
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
145
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
146
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
147
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
148
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
149
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
150
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
151
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
152
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
153
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
154
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
155
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
156
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
157
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
158
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
159
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
160
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
161
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
162
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
163
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
164
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
165
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
166
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
167
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
168
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
169
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
170
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
171
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
172
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
173
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
174
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
175
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
176
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
177
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
178
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
179
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
180
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
181
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
182
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
183
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
184
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
185
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
186
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
187
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
188
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
189
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
190
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
191
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
192
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
193
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
194
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
195
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
196
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
197
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
198
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
199
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
200
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
201
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
202
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
203
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
204
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
205
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
206
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
207
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
208
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
209
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
210
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
211
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
212
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
213
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
214
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
215
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
216
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
217
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
218
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
219
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
220
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
221
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
222
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
223
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
224
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
225
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
226
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
227
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
228
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
229
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
230
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
231
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
232
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
233
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
234
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
235
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
236
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
237
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
238
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
239
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
240
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
241
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
242
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
243
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
244
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
245
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
246
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
247
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
248
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
249
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
250
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
251
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
252
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
253
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
254
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
255
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
256
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
257
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
258
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
259
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
260
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
261
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
262
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
263
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
264
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
265
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
266
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
267
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
268
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
269
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
270
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
271
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
272
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
273
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
274
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
275
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
276
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
277
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
278
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
279
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)