Q&A

  • [재질문826번]프로그램 도중 기본 프린트를 ...
안녕하세요.

별다른 것은 없고요 현재 설정된 기본 프린트를 바꿀려하는데 바꿔도

이전설정된 프린트장치에서 프린트됩니다. 간단히 루틴은 다음과 같습니다.



if PrinterSetupDlg.Execute = True then

begin

try

MsWord := CreateOleObject('Word.Basic');

except

ShowMessage('MS-Word를 시작할수 없습니다.');

end;

MSWord.FileOpen(GFileName);

MSWord.FilePrint;

MSWord.FileExit;

end;



원인을 알려 주시면 감사하겠습니다.



2  COMMENTS
  • Profile
    이정욱 1999.04.29 21:53
    제가 만든 기본프린터 바꾸는 함수 입니다.

    참고하시구요... 이것은 프린터 이름의 일부만 넣어줘도 됩니다.



    procedure TMainForm.SetDPrinter(PrnStr : String);

    var

    WinIni : TIniFile;

    WinIniFileName : array[0..MAX_PATH] of char;

    s : array[0..64] of char;

    i : integer;

    pDevice : array[0..31] of Char;

    pDevice2 : array[0..31] of Char;

    pDriver : array[0..259] of Char;

    pPort : array[0..259] of Char;

    DeviceMode : THandle;



    begin

    //프린터를 세팅하는 함수.

    for i := 0 to Printer.Printers.Count - 1 do

    If Pos(PrnStr,Printer.Printers[i]) > 0 then Break;



    If (Printer.Printers.Count - 1 < i) then

    begin

    ShowMessage('프린터이름이 없습니다.');

    Exit;

    end;

    If (Printer.PrinterIndex <> i) then

    begin

    printer.PrinterIndex := -1;

    Devicemode:=0;

    printer.getprinter(pdevice2,pDriver,pPort,DeviceMode);



    Printer.PrinterIndex := i;

    Devicemode:=0;

    printer.getprinter(pdevice,pDriver,pPort,DeviceMode);



    If StrPas(pDevice) <> StrPas(pDevice2) then

    begin

    GetWindowsDirectory(WinIniFileName, sizeof(WinIniFileName));

    StrCat(WinIniFileName, 'win.ini');

    WinIni := TIniFile.Create(WinIniFileName);

    try

    WinIni.WriteString('windows',

    'device',

    StrPas(pdevice)+','+StrPas(pDriver)+','+StrPas(pPort));

    finally

    WinIni.Free;

    end; //Try



    StrCopy(S, 'windows');

    SendMessage(HWND_BROADCAST, WM_WININICHANGE, 0, LongInt(@S));

    Application.ProcessMessages;

    Delay(1000);

    end;

    end;

    end;





    이호선 wrote:

    > 안녕하세요.

    > 별다른 것은 없고요 현재 설정된 기본 프린트를 바꿀려하는데 바꿔도

    > 이전설정된 프린트장치에서 프린트됩니다. 간단히 루틴은 다음과 같습니다.

    >

    > if PrinterSetupDlg.Execute = True then

    > begin

    > try

    > MsWord := CreateOleObject('Word.Basic');

    > except

    > ShowMessage('MS-Word를 시작할수 없습니다.');

    > end;

    > MSWord.FileOpen(GFileName);

    > MSWord.FilePrint;

    > MSWord.FileExit;

    > end;

    >

    > 원인을 알려 주시면 감사하겠습니다.

    >





  • Profile
    안치봉 1999.04.29 07:10
    이호선 wrote:

    > 안녕하세요.

    > 별다른 것은 없고요 현재 설정된 기본 프린트를 바꿀려하는데 바꿔도

    > 이전설정된 프린트장치에서 프린트됩니다. 간단히 루틴은 다음과 같습니다.

    >

    > if PrinterSetupDlg.Execute = True then

    > begin

    > try

    > MsWord := CreateOleObject('Word.Basic');

    > except

    > ShowMessage('MS-Word를 시작할수 없습니다.');

    > end;

    > MSWord.FileOpen(GFileName);

    > MSWord.FilePrint;

    > MSWord.FileExit;

    > end;

    >

    > 원인을 알려 주시면 감사하겠습니다.

    >



    안녕하세요.



    위소스를 보니... ole 객체자체에서 지원하는 프린트루틴을 사용하는군요..

    그렇다면 아마도 위소스처럼 기본프린터를 변경시켜도 그 내용이 적용되지 않을 가능성이 많습니다. - 참고로 프로그램에서 기본프린터를 바꾸어도 그 프로그램이 종료되면 원래의 값으로 프린터가 설정됩니다.



    확실한건 아닙니다. -.-;;



    • 이호선
      1999.04.29 23:52
      안녕하세요. xor연산을 써서 해볼려 했는데 Error가 나더군요 제가 작성한 코드는 다음과 같습니다. c...
    • 안치봉
      1999.04.30 00:39
      이호선 wrote: > 안녕하세요. > xor연산을 써서 해볼려 했는데 Error가 나더군요 > 제가 작성한 코드는 ...
    • 전철호
      1999.04.30 01:06
      안치봉 wrote: > 이호선 wrote: > > 안녕하세요. > > xor연산을 써서 해볼려 했는데 Error가 나더군요 ...
    • 이호선
    • 1999.04.29 23:52
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 김범환
      1999.07.12 13:04
      델파이를 공부하면서 여러가지 데이타 베이스를 정신없이 사용하고 있습니다. 그런데 좀더 확실하게 DBM...
    • 안치봉
      1999.04.30 00:39
      이호선 wrote: > 안녕하세요. > xor연산을 써서 해볼려 했는데 Error가 나더군요 > 제가 작성한 코드는 ...
    • 조복기
      1999.07.12 19:07
      김범환 께서 말씀하시기를... > 델파이를 공부하면서 여러가지 데이타 베이스를 정신없이 사용하고 있습니...
    • 전철호
      1999.04.30 01:06
      안치봉 wrote: > 이호선 wrote: > > 안녕하세요. > > xor연산을 써서 해볼려 했는데 Error가 나더군요 ...
    • 안명호
    • 1999.04.29 23:36
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김영대
      1999.04.29 23:48
      안명호 wrote: > 윈도우즈 소켓 프로그래밍에 대한 자료를 찾고 있습니다. > 소장하고 계신 분 있으시면 ...
    • 안명호
    • 1999.04.29 23:36
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김영대
      1999.04.29 23:48
      안명호 wrote: > 윈도우즈 소켓 프로그래밍에 대한 자료를 찾고 있습니다. > 소장하고 계신 분 있으시면 ...
    • 김종성
    • 1999.07.12 07:28
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김상영
      1999.07.12 07:51
      김종성 께서 말씀하시기를... > 델파이용 인스톨 프로그램(shiled(?))를 구하려면 어디에 가야 되는지요? ...
    • 이호선
    • 1999.04.29 21:29
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 전철호
      1999.04.29 23:08
      이호선 wrote: > 안녕하세요. > c에서 Character = Character ^ 0xff 를 하여 bitwise-exclusive-or를 ...
    • 이룡
    • 1999.07.12 05:54
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      1999.07.12 09:50
      이룡 께서 말씀하시기를... > 이미지에서 jpg를 인식 못합니다... 혹시 왜 그런지 알고 계시거나 > 혹은 ...
    • 이룡
    • 1999.07.12 05:52
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 문창완
      1999.04.29 23:02
      바코드 쿠현에 대해 궁금합니다. 그것에 대해 강좌나 설명을 부탁합니다. 그리고 바코들를 스캔하는 부...
    • 김종호
      1999.07.12 09:45
      이룡 께서 말씀하시기를... > Edit에 입력할때 숫자만 들어갈수 있게 하려면 어떻게 해야 될련지 > 그리...
    • 구창민
      1999.04.30 03:44
      문창완 wrote: > > 바코드 쿠현에 대해 궁금합니다. > 그것에 대해 강좌나 설명을 부탁합니다. > 그리...
    • 안치봉
      1999.04.30 00:42
      문창완 wrote: > > 바코드 쿠현에 대해 궁금합니다. > 그것에 대해 강좌나 설명을 부탁합니다. > 그리...
    • 이누리
    • 1999.04.29 18:22
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 박성훈
      1999.07.12 05:38
      동적생성된 컴포넌트를 눌렀을 때 똑같은 컴포넌트가 여러개 동적생성 되도록 하려고 하는데, 이렇게 이중...
    • mephy
      1999.04.29 22:31
      이누리 wrote: > 안녕하세요 > > 각 Form 에서 SelectNext 를 사용한 경우 Error 가 나지 않았는데 > ...
    • 김봉재
    • 1999.04.29 18:49
    • 3 COMMENTS
    • /
    • 0 LIKES
    • Crow2020
      1999.07.12 00:09
      안녕하세요..^^ 전 지금 통계프로그램을 작성중에 있습니다. -,.- 먼저 아래와 같은 출력내용을 String...
    • 이정욱
      1999.04.29 22:15
      잠깐 Command프롬프트로 가셔서 그 BORDBP40.DLL이 있는 디렉토리로 이동하신 후에 Regsvr32 BORDBK40.DLL ...
    • 손인호
      1999.07.12 06:41
      Crow2020 께서 말씀하시기를... > 안녕하세요..^^ > > 전 지금 통계프로그램을 작성중에 있습니다. -,....
    • BDS
    • 1999.07.11 23:21
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 손인호
      1999.07.12 06:48
      BDS 께서 말씀하시기를... > 더위에 수고가 많으십니다. > Query를 사용하여 검색을 하려고 하는데, 그만...
    • 이호선
    • 1999.04.29 06:02
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.29 21:53
      제가 만든 기본프린터 바꾸는 함수 입니다. 참고하시구요... 이것은 프린터 이름의 일부만 넣어줘도 됩니...
    • 안치봉
      1999.04.29 07:10
      이호선 wrote: > 안녕하세요. > 별다른 것은 없고요 현재 설정된 기본 프린트를 바꿀려하는데 바꿔도 > ...
    • 최선기
    • 1999.07.11 22:41
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.07.11 23:30
      OnClose occurs when the form closes. type TCloseAction = (caNone, caHide, caFree, caMinimize)...
    • 최선기
    • 1999.07.11 21:52
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 김기영
      1999.04.27 22:13
      요즘 웹 페이지 상에서 핸드폰이나 삐삐로 문자 메시지를 보낼 수 있느 곳이 많습니다. 이걸 프로그램 상...
    • 안치봉
      1999.07.11 23:34
      The types of operands and results for relational operations are shown in the following table. Ope...
    • 신인재
      1999.04.27 23:01
      아래의 내용은 델파이 코리아의 하영재님의 답변을 갈무리해온 것입니다. -------------------- 아래---...
    • 우중산보
      1999.04.29 21:47
      신인재님... 캄싸함다... 고수님의 말 한방에 걍 감동의 물결임다. 다시 한번 캄사... 꾸벅
    • 이호선
    • 1999.04.29 21:29
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 차재필
      1999.07.11 09:09
      델파이를 공부하고 있는데 이번에 프린트 포트에서 입력을 받아 시리얼 포트로 전송을 해줘야하는 ...
    • 전철호
      1999.04.29 23:08
      이호선 wrote: > 안녕하세요. > c에서 Character = Character ^ 0xff 를 하여 bitwise-exclusive-or를 ...
    • 양병희
    • 1999.04.29 20:48
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.30 00:45
      양병희 wrote: > 컴파일시에는 error이 없었는데 > 실행을 시키면 'A Win32 API function failed'라는 오...
    • 김준선
    • 1999.07.11 00:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이주흥
      1999.07.11 01:11
      김준선 께서 말씀하시기를... > 임의의 문자열 '나는 델파이를 시작합이다.'에서 > 차례로 '나''는'' ''...