Q&A

  • Unsafe type 경고문이 나타납니다
이제까지 delphi5를 사용하다가 2007로 바꾸어 컴파일 하려 하는데

이부분에서 자꾸 경고문이 떠내요

제가 기초가 좀 약해서리 조언좀 부탁 드립니다

꾸벅


[Warning] URG03.pas(859): Unsafe type 'PChar'    ClipBoard.SetTextBuf( PChar CopyBuff.Text));  

    ClipBoard.SetTextBuf( PChar(CopyBuff.Text));  



procedure TFrmRG03.ToolButton1Click(Sender: TObject);
var
  XH:Variant;
  Line:integer;
  TiName,rows:string;
  CopyBuff:TStringList;
  SaveDig:TSaveDialog;
begin
  try
    XH := CreateOLEObject('Excel.Application');
  except
    ShowMessage('Excel 프로그램이 설치 되어 있지 않습니다.');
    exit;
  end;
  MovePage('END');
  CopyBuff := TStringList.Create;
  SaveDig := TSaveDialog.Create( nil );
  XH.Visible := False;
  XH.WorkBooks.Add;
  XH.DisplayAlerts := False;
  try
    CopyBuff.Clear;
    rows := '';
    rows := rows + Lbl00.Caption + CutStr;
    rows := rows + Lbl01.Caption + CutStr;
    rows := rows + Lbl02.Caption + CutStr;
    rows := rows + Lbl03.Caption + CutStr;
    rows := rows + Lbl04.Caption + CutStr;
    rows := rows + Lbl05.Caption + CutStr;
    CopyBuff.Add(rows);
    for Line := 1 to ActiveLine do begin
      with ReLine[Line] do begin
        rows := '';
        rows := rows + T_00 + CutStr;
        rows := rows + T_01 + CutStr;
        rows := rows + T_02 + CutStr;
        rows := rows + T_03 + CutStr;
        rows := rows + T_04 + CutStr;
        rows := rows + T_05 + CutStr;
        CopyBuff.Add(rows);
      end;
    end;
    ClipBoard.SetTextBuf( PChar(CopyBuff.Text));  <== 요부분입니다.
    XH.ActiveSheet.Paste;
    SaveDig.Title := '저장할 파일명';
    SaveDig.InitialDir := DM.ExePath+'Excel';
    SaveDig.Filter := '*.xls';
    TiName := StringReplace(LblT.Caption,' ','',[rfReplaceAll]);
    SaveDig.FileName := Format('%s',[TiName]);
    if SaveDig.Execute then begin
      XH.ActiveWorkBook.SaveAs(SaveDig.FileName);
    end;
  finally
    XH.Quit;
    CopyBuff.Free;
    SaveDig.Free;
  end;
end;

1  COMMENTS
  • Profile
    최용일 2007.08.12 07:16
    안녕하세요. 최용일입니다.

    Project Options메뉴의 Complier Messages탭에 보시면 Unsafe type, Unsafe code, Unsafe typecast가 있습니다. 체크해제하세요...

    무시해도 되는 Warning입니다.

    ^^ 항상 즐코하세요...