LogIn E-mail
설계이야기
[Perl Tk] 도스창 없이, 펄 Tk 스크립트 실행하기; 명령프롬프트창 안 나오게 하기
# 38 JMJS    17.9.30 12:12

[Perl Tk] 도스창 없이, 펄 Tk 스크립트 실행하기; 명령프롬프트창 안 나오게 하기

Friday, June 09, 2006

 

 



Tk 스크립트 (GUI를 가진 펄 스크립트) 를 탐색기 등에서 마우스로 클릭하여 실행하면, 창이 2개 뜨게 됩니다. 하나는 Tk 스크립트가 실행되는 GUI창이고, 다른 하나는 "명령 프롬프트 창" 즉 도스창입니다.

뒤에 있는 명령 프롬프트 창에서, 경고 메시지라든지 유용한 정보가 나오는 경우도 있지만 대부분의 경우에는 거추장스럽습니다.

이것을 안 나오게 하는 방법이 있습니다.


\Perl\bin 폴더에 보면 wperl.exe 라는 실행 파일이 있습니다. 이것으로 Tk 스크립트를 실행시키면 거추장스러운 창이 나오지 않습니다. wperl.exe 사용법은 다음과 같습니다:


(1) wperl.exe 를 마우스 오른쪽 버튼으로 드래그하여, wperl.exe 의 "바로 가기" 아이콘을 만들어 줍니다.

(2) 바로가기 아이콘을 선택한 채, Alt+Enter 키를 눌러, 바로가기의 등록정보를 살펴 봅니다.

(3) D:에 액티브펄을 설치했다면, 대상에는 D:\Perl\bin\wperl.exe 라고 되어 있을 것입니다. 이 뒤에다가 Tk 스크립트의 풀패스를 추가합니다. 예를 들어 다음과 같습니다:

D:\Perl\bin\wperl.exe D:\WINDOWS_\Path\tk_foo.pl

(4) 만약 '실행되는 디렉토리'의 위치가 중요한 스크립트라면, 시작 위치 도 변경해 줍니다. 확인 버튼을 눌러 설정을 저장합니다.


이제 방금 만든 "바로 가기" 파일을 실행하면, 도스창 없이 Tk 스크립트만 깔끔하게 실행시킬 수 있습니다.



요점:
perl.exe 대신 wperl.exe 로, Tk 스크립트를 실행시키면 불필요한 도스창이 나오지 않습니다.



※ 단, Tk 스크립트의 프로그래밍과 디버깅 과정에서는, 그냥 일반 스크립트처럼 명령 프롬프트에서 실행시키는 것이 낫습니다. 에러 메시지를 볼 수 있기 때문입니다.


게시물: 108 건, 현재: 1 / 2 쪽
[1] [2]
번호 제       목 작성자 등록일 방문
115  sort hash. by key, by value. hash jinsung 21.6.9 54
114  lunar.pl lunar.pm jinsung 21.3.9 92
113  package 변수 main 에서 사용시 local 선언 말 것 jinsung 20.12.10 136
112  foreach sort, sort uniq jinsung 21.1.31 187
111  diamond operator , jsort (square mix) jinsung 20.11.3 161
110  file2date.pl JMJS 20.1.12 225
109  UTF-8, EUC-KR JMJS 19.12.15 240
108  wget.pl LWP Simple get JMJS 19.9.17 308
100  jsame.pl JMJS 09.5.21 1798
99  jos.pl JMJS 08.11.29 1516
98  jmngr.pl - jmjspro manager JMJS 08.11.29 1543
97  vhdl.pm JMJS 08.11.29 1500
96  jreg.pl JMJS 08.11.29 1505
95  jtree.pm JMJS 08.11.29 1579
94  w2c.pl JMJS 08.11.29 1512
93  jdread.pl JMJS 08.11.29 1318
92  ffile.zip ffilediff.pl JMJS 09.4.24 1367
91  rgb2ycbcr.pl JMJS 10.5.12 1680
90  proview.pl JMJS 08.11.29 1707
89  smi_shift.pl JMJS 10.10.3 1348
88  srt2smi.pl srtshift.pl JMJS 18.7.14 1555
87  Perl CGI Input Test, getenv.cgi JMJS 18.11.21 1172
86  opendir, readdir, closedir JMJS 08.10.12 1487
85  tr a-z A-Z JMJS 08.10.3 1297
84  JARRAY->jfunc JMJS 08.10.2 1268
83  수치함수 - ... JMJS 09.5.7 1723
82  역행렬3x3 JMJS 09.5.7 1810
81  hex2int.pl JMJS 10.9.12 2529
80  stat - file status 보기 JMJS 07.12.16 1446
79  Perl Tip JMJS 09.7.20 2538
78  SMI file sync delay JMJS 07.7.18 1497
77  rmword.pl JMJS 07.6.18 1392
76  [Perl]package AP jinsung 07.2.28 1293
75  [Perl]read_dir.pl JMJS 07.2.22 1589
74  [Perl]jtab2char - tab문자를 특정 char로 바꿔주기 JMJS 07.2.22 1540
73  Perl 숫자 Sorting JMJS 11.5.17 1650
72  [CGI]GET and POST JMJS 06.11.20 3368
71  Perl Grammer JMJS 06.9.4 2910
70  표준 모듈 JMJS 06.8.10 1790
69  Getopt::Long example JMJS 06.8.10 1965
68  array of array $P[$j][$i] jinsung 20.12.20 1382
67  [HTML]테이블 배경에 그림넣기 JMJS 06.3.8 1484
66  l2w.pm - line to word JMJS 08.12.1 1441
65  make_random_chars JMJS 05.8.10 1319
64  mail 보내는 script JMJS 05.3.23 1263
63  실행파일을 실행시키고 표준에러 읽기 JMJS 09.2.25 1284
62  팝업창(공지창)띄우기 Jinsung 03.12.16 2370
61  print <<ENDLINE JMJS 03.12.5 1369
60  [HTML]Target JMJS 03.5.21 1402
59  [Perl]jutil.pm JMJS 03.5.3 1643
58  [Perl]jdiff.pl JMJS 02.6.6 1524
57  [Perl]cfilter.pm - commant filter JMJS 02.1.31 1575
56  [HTML]자동으로 다른 페이지 이동 JMJS 02.1.19 1425
55  Perl 설치하기 - ActiveWare JMJS 02.1.16 1437
54  opendir , readdir , closedir JMJS 02.1.4 1452
53  rand_diff JMJS 01.10.23 1363
52  vcd2v.pl JMJS 15.8.25 1416
51  file upload JMJS 01.3.16 1384
50  umask(070) <- chmod o-rwx 진성 01.3.16 1540
49  head2index 진성 01.3.15 1237
48  grep.pl JMJS 11.1.20 1366
47  chr(13) = \M 진성 01.3.15 1217
46  stty JMJS 01.3.12 1349
45  des.pl JMJS 01.3.8 1285
44  chr_plus.pl JMJS 01.3.8 1312
43  get passwd in unix JMJS 19.8.18 1158
42  unsort JMJS 19.9.10 1400
41  read from website web JMJS 19.5.15 1179
40  vec JMJS 01.3.8 1456
39  chomp $_ @_ say defined use 5.010 state grep any ... JMJS 18.10.27 1376
38  [Perl Tk] 도스창 없이, 펄 Tk 스크립트 실행하기; ... JMJS 17.9.30 1349
37  @bs = sort {$a <=> $b} @as; JMJS 17.7.12 1411
36  if ( -e -z -s -f -d -T -B -M ) JMJS 16.3.10 1491
35  mkmm.pl - make freemind JMJS 12.5.22 1443
34  perl -pi.orig -e "s/\bu_(\w+_t)\b/u$1/g" *.c JMJS 11.8.26 1432
33  .xls output csv 파일에 \n "가 있을때 JMJS 11.4.13 1300
32  jdcat.pl juncat.pl JMJS 11.2.24 1481
31  print chr(ord('a')); JMJS 01.3.8 1383
30  require "/user/home/jin1/jin1.pm"; JMJS 00.11.28 1318
29  for(my $i=0; $i < @abc; $i ++) {} JMJS 00.11.15 1426
28  remove blank $abc =~ s/[\s]+//g; JMJS 00.11.15 1357
27  array and for JMJS 00.11.14 1203
26  홈페이지 자동 이동 JMJS 00.10.28 1257
25  html에서 쓰이는 기호표시방법 JMJS 00.9.30 1201
24  배열의 범위 연산자 JMJS 00.9.20 1496
23  for(1..3) { print "$_";} JMJS 09.4.24 1192
22  package JMJS 00.9.18 1226
21  줄에서 한글자 고치기 JMJS 00.8.7 1321
20  hotkey function by getc JMJS 00.7.21 1422
19  read, sysread, syswrite JMJS 00.7.21 2220
18  crypt JMJS 00.7.13 1530
17  csv2gan.pl JMJS 11.4.4 1537
16  hexa JMJS 00.7.7 1340
15  file in out.pl JMJS 00.7.5 1550
14  ARGV JMJS 00.7.5 1386
13  jtime.pm - localtime, timelocal JMJS 09.4.9 1904
12  @INC JMJS 00.7.5 1748
11  $#myarray JMJS 00.7.5 1485
10  Hash of Array JMJS 00.7.5 1295
9  package JARRAY JHASH JMJS 00.7.4 1575
[1] [2]