MessageBox

概要

ソース

  • fileWin32MsdBox.zip
    すべてを展開すべてを収束
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
    
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    
    #!/usr/bin/perl
     
    use strict;
    use warnings;
    use utf8;
    use Encode;
    use Win32::Unicode::Native;
    use Win32::API;
     
    #my $charsetFile	= 'UTF-8';
    my $charsetConsole    = 'CP932';
    my $charsetApiA        = 'CP932';
    my $charsetApiW        = 'UTF-16LE';
     
    my $message = "Hello, world!\nこんにちは世界?";
    my $type = 0x0000_0004 | 0x0000_0020;
     
    print "コンソール\n${message}\n";
     
    my $messageBoxA = Win32::API::More->new(
        'User32',
        'int MessageBoxA(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType)'
    ) or die(decode($charsetConsole, Win32::FormatMessage(Win32::GetLastError())));
    my $retA = $messageBoxA->Call(
        0, encode($charsetApiA, $message), encode($charsetApiA, "ApiA 版"), $type
    );
    print "${retA}\n";
     
    my $win32w = Win32::API::More->Import(
        'User32',
        'int MessageBoxW(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType)'
    ) or die(decode($charsetConsole, Win32::FormatMessage(Win32::GetLastError())));
    my $retW = MessageBoxW(
        0, encode($charsetApiW, $message), encode($charsetApiW, "ApiW 版"), $type
    );
    print "${retW}\n";
     
    # EOF
    

郵政バーコード

概要

ソース

  • fileYuBar.zip
  • Rolan社の YuBar.dll がインストールされていないと動作しません。
  • 住所データベースは架空のものであって、実在の人物、住所とは関係ありません。
    すべてを展開すべてを収束
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
     39
     40
     41
     42
     43
     44
     45
     46
     47
     48
     49
     50
     51
     52
     53
     54
     55
     56
     57
     58
     59
     60
     61
     62
    
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    -
    |
    |
    |
    |
    |
    |
    |
    |
    !
     
     
     
     
     
     
     
    -
    |
    |
    |
    |
    |
    !
     
     
    
    # 郵政バーコード作成 (Rolan社 YuBar)
    # 郵便カスタマーバーコード開発キット http://www.rolan.co.jp/shouhin/s_yubar.html
     
    use strict;
    use warnings;
    use utf8;
    use encoding 'Shift_JIS';
    use Win32::API;
    #use Data::Dump 'dump';
     
    my $FileIn  = 'Customer.txt';    # 入力ファイル
    my $FileOut = 'Customer2.txt';    # 出力ファイル
     
    open( IN, "<:encoding(Shift_JIS)", $FileIn ) || die( "can't open'".$FileIn."'.\n" );
    open( OUT, ">:encoding(Shift_JIS)", $FileOut ) || die( "can't open'".$FileOut."'.\n" );
     
    # ヘッダ行解析
    my $Line = <IN>;
    $Line =~ /(\s+)$/;
    $/ = $1;            # 改行コード設定
    chomp( $Line );
    my @Fields = split( "\t", $Line );
    my $i = 0;
    #my %FN2I = ();			# FieldName to Index
    #foreach $_ ( @Fields ){
    #	$_ =~ s/^"(.*)"$/$1/;
    #	$FN2I{ $_ } = $i++;
    #}
    my %FN2I = map{ s/^"(.*)"$/$1/; $_ => $i++; } @Fields;
     
    #print dump( %FN2I );
     
    print OUT $Line . "\t\"YuBar\"\n";
     
    my( @Records, $ZipCode, $Street, $YuBar );
     
    while( $Line = <IN> ){
        chomp( $Line );
        @Records = split( "\t", $Line );
        $ZipCode = $Records[ $FN2I{ 'ZipCode' } ];
        $ZipCode =~ s/^"(.*)"$/$1/;
        $Street  = $Records[ $FN2I{ 'Addr2'   } ];
        $Street  =~ s/^"(.*)"$/$1/;
        $YuBar   = &YuBar( $ZipCode, $Street );
        printf OUT ( "%s\t\"%s\"\n", $Line, $YuBar );
    }
     
    close( IN );
    close( OUT );
     
    exit();
     
    sub YuBar
    {
        my( $ZipCode, $Street ) = @_;
        my $GetYuBar = new Win32::API("YuBar",  "YubinBarcode", 'PPP', 'I');
        my $YuBarStr = "\x00" x 23;
        my $Ret = ($GetYuBar->Call($ZipCode, $Street, $YuBarStr) & 0xFFFF);
        return $YuBarStr;
    }
     
    # EOF
    

添付ファイル: fileWin32MsdBox.zip 222件 [詳細] fileYuBar.zip 1438件 [詳細]

リロード   新規 下位ページ作成 編集 凍結 差分 添付 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: Sat, 28 Jun 2014 14:58:37 JST (1482d)