Commit 3e424bdd0534f400f7d70303edd8d09306dcbad8
1 parent
16fb7d11
Exists in
master
and in
5 other branches
Incluindo opcao de iniciar o aplicativo no modulo hllapi
Showing
6 changed files
with
292 additions
and
202 deletions
Show diff stats
po/pt_BR.po
... | ... | @@ -5,7 +5,7 @@ msgid "" |
5 | 5 | msgstr "" |
6 | 6 | "Project-Id-Version: pw3270 5.0\n" |
7 | 7 | "Report-Msgid-Bugs-To: \n" |
8 | -"POT-Creation-Date: 2013-11-12 07:56-0200\n" | |
8 | +"POT-Creation-Date: 2013-11-17 09:42-0200\n" | |
9 | 9 | "PO-Revision-Date: 2013-11-12 08:07-0200\n" |
10 | 10 | "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n" |
11 | 11 | "Language-Team: Português <perry.werneck@gmail.com>\n" |
... | ... | @@ -206,7 +206,7 @@ msgstr "Sobre a segurança" |
206 | 206 | msgid "Action failed" |
207 | 207 | msgstr "Ação falhou" |
208 | 208 | |
209 | -#: ui/00default.xml:329 | |
209 | +#: ui/00default.xml:64 | |
210 | 210 | msgid "Add to copy" |
211 | 211 | msgstr "Adicionar à cópia" |
212 | 212 | |
... | ... | @@ -214,7 +214,7 @@ msgstr "Adicionar à cópia" |
214 | 214 | msgid "Add/Remove _CR at end of line" |
215 | 215 | msgstr "Adicionar/Remover _CR no final da linha" |
216 | 216 | |
217 | -#: ui/00default.xml:397 | |
217 | +#: ui/00default.xml:132 | |
218 | 218 | msgid "Alert sound" |
219 | 219 | msgstr "Aviso sonoro" |
220 | 220 | |
... | ... | @@ -227,7 +227,7 @@ msgstr "" |
227 | 227 | msgid "Application name" |
228 | 228 | msgstr "Nome da aplicação" |
229 | 229 | |
230 | -#: ui/10keypad.xml:155 | |
230 | +#: ui/10keypad.xml:454 | |
231 | 231 | msgid "Attn" |
232 | 232 | msgstr "Attn" |
233 | 233 | |
... | ... | @@ -244,7 +244,7 @@ msgstr "Divergência nos números de série da autoridade e emissor " |
244 | 244 | msgid "Authority and subject key identifier mismatch" |
245 | 245 | msgstr "Authority and subject key identifier mismatch" |
246 | 246 | |
247 | -#: ui/00default.xml:392 | |
247 | +#: ui/00default.xml:127 | |
248 | 248 | msgid "Auto-Reconnect" |
249 | 249 | msgstr "Reconectar automaticamente" |
250 | 250 | |
... | ... | @@ -268,11 +268,11 @@ msgstr "Versão winsock inválida" |
268 | 268 | msgid "Black" |
269 | 269 | msgstr "Preto" |
270 | 270 | |
271 | -#: ui/00default.xml:390 | |
271 | +#: ui/00default.xml:125 | |
272 | 272 | msgid "Blank Fill" |
273 | 273 | msgstr "Completar com espaços" |
274 | 274 | |
275 | -#: ui/00default.xml:383 | |
275 | +#: ui/00default.xml:118 | |
276 | 276 | msgid "Blinking Cursor" |
277 | 277 | msgstr "Cursor piscante" |
278 | 278 | |
... | ... | @@ -280,7 +280,7 @@ msgstr "Cursor piscante" |
280 | 280 | msgid "Blue" |
281 | 281 | msgstr "Azul" |
282 | 282 | |
283 | -#: ui/00default.xml:393 | |
283 | +#: ui/00default.xml:128 | |
284 | 284 | msgid "Bold" |
285 | 285 | msgstr "Negrito" |
286 | 286 | |
... | ... | @@ -288,7 +288,7 @@ msgstr "Negrito" |
288 | 288 | msgid "Brazilian Public Software Portal" |
289 | 289 | msgstr "Portal do Software Público Brasileiro" |
290 | 290 | |
291 | -#: ui/10keypad.xml:156 | |
291 | +#: ui/10keypad.xml:455 | |
292 | 292 | msgid "Break" |
293 | 293 | msgstr "Break" |
294 | 294 | |
... | ... | @@ -484,7 +484,7 @@ msgstr "Falha na assinatura do certificado" |
484 | 484 | msgid "Charset error" |
485 | 485 | msgstr "Erro de codificação de caracteres" |
486 | 486 | |
487 | -#: ui/10keypad.xml:147 | |
487 | +#: ui/00default.xml:79 | |
488 | 488 | msgid "Clear" |
489 | 489 | msgstr "Limpar" |
490 | 490 | |
... | ... | @@ -496,7 +496,7 @@ msgstr "Tema de cores:" |
496 | 496 | msgid "Color setup" |
497 | 497 | msgstr "Configuração de cores" |
498 | 498 | |
499 | -#: ui/00default.xml:372 | |
499 | +#: ui/00default.xml:107 | |
500 | 500 | msgid "Colors" |
501 | 501 | msgstr "Cores" |
502 | 502 | |
... | ... | @@ -508,7 +508,7 @@ msgstr "Command:" |
508 | 508 | msgid "Complete" |
509 | 509 | msgstr "Completo" |
510 | 510 | |
511 | -#: ui/00default.xml:382 | |
511 | +#: ui/00default.xml:117 | |
512 | 512 | msgid "Connect on startup" |
513 | 513 | msgstr "Conectar ao iniciar" |
514 | 514 | |
... | ... | @@ -516,19 +516,19 @@ msgstr "Conectar ao iniciar" |
516 | 516 | msgid "Connection reset by peer" |
517 | 517 | msgstr "Conexão foi cancelada pelo servidor" |
518 | 518 | |
519 | -#: ui/00default.xml:326 | |
519 | +#: ui/00default.xml:61 | |
520 | 520 | msgid "Copy" |
521 | 521 | msgstr "Copiar" |
522 | 522 | |
523 | -#: ui/99debug.xml:200 | |
523 | +#: ui/99debug.xml:342 | |
524 | 524 | msgid "Copy as HTML" |
525 | 525 | msgstr "Copiar como HTML" |
526 | 526 | |
527 | -#: ui/00default.xml:327 | |
527 | +#: ui/00default.xml:62 | |
528 | 528 | msgid "Copy as table" |
529 | 529 | msgstr "Copiar como tabela" |
530 | 530 | |
531 | -#: colors.c:460 ui/00default.xml:389 | |
531 | +#: colors.c:460 ui/00default.xml:124 | |
532 | 532 | msgid "Cross hair cursor" |
533 | 533 | msgstr "Cursor mira" |
534 | 534 | |
... | ... | @@ -541,7 +541,7 @@ msgstr "Atual (%s)" |
541 | 541 | msgid "Custom colors" |
542 | 542 | msgstr "Cores personalizadas" |
543 | 543 | |
544 | -#: ui/00default.xml:330 | |
544 | +#: ui/00default.xml:65 | |
545 | 545 | msgid "Cut" |
546 | 546 | msgstr "Recortar" |
547 | 547 | |
... | ... | @@ -553,7 +553,7 @@ msgstr "Cilindros" |
553 | 553 | msgid "DFT B_uffer size:" |
554 | 554 | msgstr "Tamanho do b_uffer DFT:" |
555 | 555 | |
556 | -#: ui/99debug.xml:205 | |
556 | +#: ui/99debug.xml:347 | |
557 | 557 | msgid "DS Trace" |
558 | 558 | msgstr "DS Trace" |
559 | 559 | |
... | ... | @@ -569,11 +569,11 @@ msgstr "Verde Escuro" |
569 | 569 | msgid "Data conversion error" |
570 | 570 | msgstr "Erro na conversão de dados" |
571 | 571 | |
572 | -#: ui/99debug.xml:213 | |
572 | +#: ui/99debug.xml:355 | |
573 | 573 | msgid "Debug" |
574 | 574 | msgstr "Depuração" |
575 | 575 | |
576 | -#: ui/99debug.xml:216 | |
576 | +#: ui/99debug.xml:358 | |
577 | 577 | msgid "Debug window updates" |
578 | 578 | msgstr "Mostrar atualizações de janela" |
579 | 579 | |
... | ... | @@ -581,7 +581,7 @@ msgstr "Mostrar atualizações de janela" |
581 | 581 | msgid "Default" |
582 | 582 | msgstr "Padrão" |
583 | 583 | |
584 | -#: ui/00default.xml:346 | |
584 | +#: ui/00default.xml:81 | |
585 | 585 | msgid "Delete field" |
586 | 586 | msgstr "Apagar campo" |
587 | 587 | |
... | ... | @@ -593,7 +593,7 @@ msgstr "Tipo de dispositivo rejeitado" |
593 | 593 | msgid "Disconnected from host" |
594 | 594 | msgstr "Desconectado do servidor" |
595 | 595 | |
596 | -#: ui/99debug.xml:214 | |
596 | +#: ui/99debug.xml:356 | |
597 | 597 | msgid "Display current charset" |
598 | 598 | msgstr "Mostrar a tabela de caracteres ativa" |
599 | 599 | |
... | ... | @@ -617,7 +617,7 @@ msgstr "Nome do servidor em branco" |
617 | 617 | msgid "Empty port name" |
618 | 618 | msgstr "Porta em branco" |
619 | 619 | |
620 | -#: ui/10keypad.xml:151 | |
620 | +#: ui/10keypad.xml:450 | |
621 | 621 | msgid "" |
622 | 622 | "Erase\n" |
623 | 623 | "EOF" |
... | ... | @@ -625,7 +625,7 @@ msgstr "" |
625 | 625 | "Apagar\n" |
626 | 626 | "Campo" |
627 | 627 | |
628 | -#: ui/10keypad.xml:152 | |
628 | +#: ui/10keypad.xml:451 | |
629 | 629 | msgid "" |
630 | 630 | "Erase\n" |
631 | 631 | "Input" |
... | ... | @@ -633,15 +633,15 @@ msgstr "" |
633 | 633 | "Apagar\n" |
634 | 634 | "Campos" |
635 | 635 | |
636 | -#: ui/00default.xml:345 | |
636 | +#: ui/00default.xml:80 | |
637 | 637 | msgid "Erase input" |
638 | 638 | msgstr "Apagar campos" |
639 | 639 | |
640 | -#: ui/00default.xml:347 | |
640 | +#: ui/00default.xml:82 | |
641 | 641 | msgid "Erase to end of field" |
642 | 642 | msgstr "Apagar até o final do campo" |
643 | 643 | |
644 | -#: ui/00default.xml:348 | |
644 | +#: ui/00default.xml:83 | |
645 | 645 | msgid "Erase to end of line" |
646 | 646 | msgstr "Apagar até o final da linha" |
647 | 647 | |
... | ... | @@ -684,11 +684,11 @@ msgstr "Erro lendo %s" |
684 | 684 | msgid "Error resolving %s: %s" |
685 | 685 | msgstr "Erro ao resolver %s: %s" |
686 | 686 | |
687 | -#: ui/99debug.xml:207 | |
687 | +#: ui/99debug.xml:349 | |
688 | 688 | msgid "Event Trace" |
689 | 689 | msgstr "Trace de eventos" |
690 | 690 | |
691 | -#: ui/80rexx.xml:261 | |
691 | +#: ui/80rexx.xml:303 | |
692 | 692 | msgid "External Rexx script" |
693 | 693 | msgstr "Script rexx externo" |
694 | 694 | |
... | ... | @@ -732,11 +732,11 @@ msgstr "Erro de formato no campo \"notAfter\" do certificado" |
732 | 732 | msgid "Format error in certificate's notBefore field" |
733 | 733 | msgstr "Erro de formato no campo \"notBefore\" do certificado" |
734 | 734 | |
735 | -#: ui/00default.xml:386 | |
735 | +#: ui/00default.xml:121 | |
736 | 736 | msgid "Full Screen" |
737 | 737 | msgstr "Tela cheia" |
738 | 738 | |
739 | -#: ui/10functions.xml:35 | |
739 | +#: ui/10functions.xml:499 | |
740 | 740 | msgid "Function bar" |
741 | 741 | msgstr "Barra de funções" |
742 | 742 | |
... | ... | @@ -781,7 +781,7 @@ msgstr "HTTP Proxy: EOF inesperado" |
781 | 781 | msgid "HTTP Proxy: unrecognized reply" |
782 | 782 | msgstr "HTTP Proxy: Resposta desconhecida" |
783 | 783 | |
784 | -#: ui/00default.xml:408 | |
784 | +#: ui/00default.xml:143 | |
785 | 785 | msgid "Help" |
786 | 786 | msgstr "Ajuda" |
787 | 787 | |
... | ... | @@ -842,7 +842,7 @@ msgstr "Comprimento de frame inválido" |
842 | 842 | msgid "Informations" |
843 | 843 | msgstr "Informações" |
844 | 844 | |
845 | -#: ui/00default.xml:403 | |
845 | +#: ui/00default.xml:138 | |
846 | 846 | msgid "Input method" |
847 | 847 | msgstr "Método de entrada" |
848 | 848 | |
... | ... | @@ -879,7 +879,7 @@ msgstr "Sintaxe de proxy inválida" |
879 | 879 | msgid "Invalid proxy type '%.*s'" |
880 | 880 | msgstr "Tipo de proxy invalido '%.*s'" |
881 | 881 | |
882 | -#: ui/00default.xml:395 | |
882 | +#: ui/00default.xml:130 | |
883 | 883 | msgid "Keep selected" |
884 | 884 | msgstr "Manter selecionado" |
885 | 885 | |
... | ... | @@ -895,7 +895,7 @@ msgstr "Teclado está bloqueado" |
895 | 895 | msgid "LRECL:" |
896 | 896 | msgstr "LRECL:" |
897 | 897 | |
898 | -#: ui/10keypad.xml:101 | |
898 | +#: ui/10keypad.xml:400 | |
899 | 899 | msgid "Lateral keypad" |
900 | 900 | msgstr "Barra lateral" |
901 | 901 | |
... | ... | @@ -916,7 +916,7 @@ msgstr "Faltando ']'" |
916 | 916 | msgid "Model %d (%s)" |
917 | 917 | msgstr "Modelo %d (%s)" |
918 | 918 | |
919 | -#: ui/00default.xml:384 | |
919 | +#: ui/00default.xml:119 | |
920 | 920 | msgid "Monocase" |
921 | 921 | msgstr "Só Maiúsculas" |
922 | 922 | |
... | ... | @@ -948,7 +948,7 @@ msgstr "N/A" |
948 | 948 | msgid "Network error" |
949 | 949 | msgstr "Erro de rede" |
950 | 950 | |
951 | -#: ui/00default.xml:399 | |
951 | +#: ui/00default.xml:134 | |
952 | 952 | msgid "Network keep alive" |
953 | 953 | msgstr "Network keep alive" |
954 | 954 | |
... | ... | @@ -956,7 +956,7 @@ msgstr "Network keep alive" |
956 | 956 | msgid "Network startup error" |
957 | 957 | msgstr "Erro ao iniciar a rede" |
958 | 958 | |
959 | -#: ui/00default.xml:455 | |
959 | +#: ui/00default.xml:190 | |
960 | 960 | msgid "Next field" |
961 | 961 | msgstr "Próximo campo" |
962 | 962 | |
... | ... | @@ -1033,111 +1033,111 @@ msgstr "Outro (VM/CMS)" |
1033 | 1033 | msgid "Out of memory" |
1034 | 1034 | msgstr "Memória insuficiente" |
1035 | 1035 | |
1036 | -#: ui/10keypad.xml:138 | |
1036 | +#: ui/10keypad.xml:437 | |
1037 | 1037 | msgid "PA1" |
1038 | 1038 | msgstr "PA1" |
1039 | 1039 | |
1040 | -#: ui/10keypad.xml:139 | |
1040 | +#: ui/10keypad.xml:438 | |
1041 | 1041 | msgid "PA2" |
1042 | 1042 | msgstr "PA2" |
1043 | 1043 | |
1044 | -#: ui/10keypad.xml:140 | |
1044 | +#: ui/10keypad.xml:439 | |
1045 | 1045 | msgid "PA3" |
1046 | 1046 | msgstr "PA3" |
1047 | 1047 | |
1048 | -#: ui/10functions.xml:36 | |
1048 | +#: ui/10keypad.xml:402 | |
1049 | 1049 | msgid "PF1" |
1050 | 1050 | msgstr "PF1" |
1051 | 1051 | |
1052 | -#: ui/10functions.xml:45 | |
1052 | +#: ui/10keypad.xml:417 | |
1053 | 1053 | msgid "PF10" |
1054 | 1054 | msgstr "PF10" |
1055 | 1055 | |
1056 | -#: ui/10functions.xml:46 | |
1056 | +#: ui/10keypad.xml:418 | |
1057 | 1057 | msgid "PF11" |
1058 | 1058 | msgstr "PF11" |
1059 | 1059 | |
1060 | -#: ui/10functions.xml:47 | |
1060 | +#: ui/10keypad.xml:419 | |
1061 | 1061 | msgid "PF12" |
1062 | 1062 | msgstr "PF12" |
1063 | 1063 | |
1064 | -#: ui/10functions.xml:50 | |
1064 | +#: ui/10functions.xml:514 | |
1065 | 1065 | msgid "PF13" |
1066 | 1066 | msgstr "PF13" |
1067 | 1067 | |
1068 | -#: ui/10functions.xml:51 | |
1068 | +#: ui/10functions.xml:515 | |
1069 | 1069 | msgid "PF14" |
1070 | 1070 | msgstr "PF14" |
1071 | 1071 | |
1072 | -#: ui/10functions.xml:52 | |
1072 | +#: ui/10functions.xml:516 | |
1073 | 1073 | msgid "PF15" |
1074 | 1074 | msgstr "PF15" |
1075 | 1075 | |
1076 | -#: ui/10functions.xml:53 | |
1076 | +#: ui/10functions.xml:517 | |
1077 | 1077 | msgid "PF16" |
1078 | 1078 | msgstr "PF16" |
1079 | 1079 | |
1080 | -#: ui/10functions.xml:54 | |
1080 | +#: ui/10functions.xml:518 | |
1081 | 1081 | msgid "PF17" |
1082 | 1082 | msgstr "PF17" |
1083 | 1083 | |
1084 | -#: ui/10functions.xml:55 | |
1084 | +#: ui/10functions.xml:519 | |
1085 | 1085 | msgid "PF18" |
1086 | 1086 | msgstr "PF18" |
1087 | 1087 | |
1088 | -#: ui/10functions.xml:56 | |
1088 | +#: ui/10functions.xml:520 | |
1089 | 1089 | msgid "PF19" |
1090 | 1090 | msgstr "PF19" |
1091 | 1091 | |
1092 | -#: ui/10functions.xml:37 | |
1092 | +#: ui/10keypad.xml:403 | |
1093 | 1093 | msgid "PF2" |
1094 | 1094 | msgstr "PF2" |
1095 | 1095 | |
1096 | -#: ui/10functions.xml:57 | |
1096 | +#: ui/10functions.xml:521 | |
1097 | 1097 | msgid "PF20" |
1098 | 1098 | msgstr "PF20" |
1099 | 1099 | |
1100 | -#: ui/10functions.xml:58 | |
1100 | +#: ui/10functions.xml:522 | |
1101 | 1101 | msgid "PF21" |
1102 | 1102 | msgstr "PF21" |
1103 | 1103 | |
1104 | -#: ui/10functions.xml:59 | |
1104 | +#: ui/10functions.xml:523 | |
1105 | 1105 | msgid "PF22" |
1106 | 1106 | msgstr "PF22" |
1107 | 1107 | |
1108 | -#: ui/10functions.xml:60 | |
1108 | +#: ui/10functions.xml:524 | |
1109 | 1109 | msgid "PF23" |
1110 | 1110 | msgstr "PF23" |
1111 | 1111 | |
1112 | -#: ui/10functions.xml:61 | |
1112 | +#: ui/10functions.xml:525 | |
1113 | 1113 | msgid "PF24" |
1114 | 1114 | msgstr "PF24" |
1115 | 1115 | |
1116 | -#: ui/10functions.xml:38 | |
1116 | +#: ui/10keypad.xml:404 | |
1117 | 1117 | msgid "PF3" |
1118 | 1118 | msgstr "PF3" |
1119 | 1119 | |
1120 | -#: ui/10functions.xml:39 | |
1120 | +#: ui/10keypad.xml:407 | |
1121 | 1121 | msgid "PF4" |
1122 | 1122 | msgstr "PF4" |
1123 | 1123 | |
1124 | -#: ui/10functions.xml:40 | |
1124 | +#: ui/10keypad.xml:408 | |
1125 | 1125 | msgid "PF5" |
1126 | 1126 | msgstr "PF5" |
1127 | 1127 | |
1128 | -#: ui/10functions.xml:41 | |
1128 | +#: ui/10keypad.xml:409 | |
1129 | 1129 | msgid "PF6" |
1130 | 1130 | msgstr "PF6" |
1131 | 1131 | |
1132 | -#: ui/10functions.xml:42 | |
1132 | +#: ui/10keypad.xml:412 | |
1133 | 1133 | msgid "PF7" |
1134 | 1134 | msgstr "PF7" |
1135 | 1135 | |
1136 | -#: ui/10functions.xml:43 | |
1136 | +#: ui/10keypad.xml:413 | |
1137 | 1137 | msgid "PF8" |
1138 | 1138 | msgstr "PF8" |
1139 | 1139 | |
1140 | -#: ui/10functions.xml:44 | |
1140 | +#: ui/10keypad.xml:414 | |
1141 | 1141 | msgid "PF9" |
1142 | 1142 | msgstr "PF9" |
1143 | 1143 | |
... | ... | @@ -1154,15 +1154,15 @@ msgstr "Erro de interpretação em %s" |
1154 | 1154 | msgid "Passthru Proxy: send error" |
1155 | 1155 | msgstr "Passthru Proxy: Erro ao enviar" |
1156 | 1156 | |
1157 | -#: ui/00default.xml:331 | |
1157 | +#: ui/00default.xml:66 | |
1158 | 1158 | msgid "Paste" |
1159 | 1159 | msgstr "Colar" |
1160 | 1160 | |
1161 | -#: ui/00default.xml:332 | |
1161 | +#: ui/00default.xml:67 | |
1162 | 1162 | msgid "Paste next" |
1163 | 1163 | msgstr "Colar próximo" |
1164 | 1164 | |
1165 | -#: ui/00default.xml:335 | |
1165 | +#: ui/00default.xml:70 | |
1166 | 1166 | msgid "Paste text file" |
1167 | 1167 | msgstr "Colar arquivo texto" |
1168 | 1168 | |
... | ... | @@ -1170,7 +1170,7 @@ msgstr "Colar arquivo texto" |
1170 | 1170 | msgid "Paste text file contents" |
1171 | 1171 | msgstr "Colar conteúdo de arquivo texto" |
1172 | 1172 | |
1173 | -#: ui/00default.xml:388 | |
1173 | +#: ui/00default.xml:123 | |
1174 | 1174 | msgid "Paste with left margin" |
1175 | 1175 | msgstr "Colar com margem esquerda" |
1176 | 1176 | |
... | ... | @@ -1186,7 +1186,7 @@ msgstr "Caminho para os arquivos de dados da aplicação" |
1186 | 1186 | msgid "Pink" |
1187 | 1187 | msgstr "Rosa" |
1188 | 1188 | |
1189 | -#: ui/00default.xml:454 | |
1189 | +#: ui/00default.xml:189 | |
1190 | 1190 | msgid "Previous field" |
1191 | 1191 | msgstr "Campo anterior" |
1192 | 1192 | |
... | ... | @@ -1194,11 +1194,11 @@ msgstr "Campo anterior" |
1194 | 1194 | msgid "Primary space:" |
1195 | 1195 | msgstr "Primary space:" |
1196 | 1196 | |
1197 | -#: ui/00default.xml:314 | |
1197 | +#: ui/00default.xml:49 | |
1198 | 1198 | msgid "Print" |
1199 | 1199 | msgstr "Imprimir" |
1200 | 1200 | |
1201 | -#: ui/00default.xml:316 | |
1201 | +#: ui/00default.xml:51 | |
1202 | 1202 | msgid "Print copy" |
1203 | 1203 | msgstr "Imprimir cópia" |
1204 | 1204 | |
... | ... | @@ -1206,7 +1206,7 @@ msgstr "Imprimir cópia" |
1206 | 1206 | msgid "Print operation failed" |
1207 | 1207 | msgstr "Operação de impressão falhou" |
1208 | 1208 | |
1209 | -#: ui/00default.xml:315 | |
1209 | +#: ui/00default.xml:50 | |
1210 | 1210 | msgid "Print selected" |
1211 | 1211 | msgstr "Imprimir seleção" |
1212 | 1212 | |
... | ... | @@ -1214,7 +1214,7 @@ msgstr "Imprimir seleção" |
1214 | 1214 | msgid "Print selection box" |
1215 | 1215 | msgstr "Imprimir marca de seleção" |
1216 | 1216 | |
1217 | -#: print.c:907 ui/00default.xml:373 | |
1217 | +#: print.c:907 ui/00default.xml:108 | |
1218 | 1218 | msgid "Print settings" |
1219 | 1219 | msgstr "Configurações de impressão" |
1220 | 1220 | |
... | ... | @@ -1226,7 +1226,7 @@ msgstr "Progresso" |
1226 | 1226 | msgid "Purple" |
1227 | 1227 | msgstr "Púrpura" |
1228 | 1228 | |
1229 | -#: ui/00default.xml:322 | |
1229 | +#: ui/00default.xml:57 | |
1230 | 1230 | msgid "Quit" |
1231 | 1231 | msgstr "Sair" |
1232 | 1232 | |
... | ... | @@ -1306,7 +1306,7 @@ msgstr "RPQ: Não foi possível resolver '%s': %s" |
1306 | 1306 | msgid "RPQ: gethostbyname error" |
1307 | 1307 | msgstr "RPQ: Erro em gethostbyname" |
1308 | 1308 | |
1309 | -#: ui/00default.xml:319 | |
1309 | +#: ui/00default.xml:54 | |
1310 | 1310 | msgid "Receive file" |
1311 | 1311 | msgstr "Receber arquivo" |
1312 | 1312 | |
... | ... | @@ -1322,27 +1322,27 @@ msgstr "Formato de registro" |
1322 | 1322 | msgid "Red" |
1323 | 1323 | msgstr "Vermelho" |
1324 | 1324 | |
1325 | -#: ui/99debug.xml:215 | |
1325 | +#: ui/99debug.xml:357 | |
1326 | 1326 | msgid "Reload buffer contents" |
1327 | 1327 | msgstr "Recarregar conteúdo do buffer" |
1328 | 1328 | |
1329 | -#: ui/00default.xml:340 | |
1329 | +#: ui/00default.xml:75 | |
1330 | 1330 | msgid "Remove selection" |
1331 | 1331 | msgstr "Remover seleção" |
1332 | 1332 | |
1333 | -#: ui/00default.xml:341 | |
1333 | +#: ui/00default.xml:76 | |
1334 | 1334 | msgid "Reselect" |
1335 | 1335 | msgstr "Reselecionar" |
1336 | 1336 | |
1337 | -#: ui/10keypad.xml:148 | |
1337 | +#: ui/10keypad.xml:447 | |
1338 | 1338 | msgid "Reset" |
1339 | 1339 | msgstr "Reset" |
1340 | 1340 | |
1341 | -#: ui/00default.xml:387 | |
1341 | +#: ui/00default.xml:122 | |
1342 | 1342 | msgid "Resize on alternate screen" |
1343 | 1343 | msgstr "Mudar tamanho do terminal em tela alternativa" |
1344 | 1344 | |
1345 | -#: ui/00default.xml:456 | |
1345 | +#: ui/00default.xml:191 | |
1346 | 1346 | msgid "Return" |
1347 | 1347 | msgstr "Return" |
1348 | 1348 | |
... | ... | @@ -1503,7 +1503,7 @@ msgstr "" |
1503 | 1503 | "SSL_write:\n" |
1504 | 1504 | "%s" |
1505 | 1505 | |
1506 | -#: ui/00default.xml:311 | |
1506 | +#: ui/00default.xml:46 | |
1507 | 1507 | msgid "Save copy" |
1508 | 1508 | msgstr "Salvar cópia" |
1509 | 1509 | |
... | ... | @@ -1511,7 +1511,7 @@ msgstr "Salvar cópia" |
1511 | 1511 | msgid "Save copy to file" |
1512 | 1512 | msgstr "Salvar cópia para arquivo" |
1513 | 1513 | |
1514 | -#: ui/00default.xml:309 | |
1514 | +#: ui/00default.xml:44 | |
1515 | 1515 | msgid "Save screen" |
1516 | 1516 | msgstr "Salvar tela" |
1517 | 1517 | |
... | ... | @@ -1519,7 +1519,7 @@ msgstr "Salvar tela" |
1519 | 1519 | msgid "Save screen to file" |
1520 | 1520 | msgstr "Salvar tela para arquivo" |
1521 | 1521 | |
1522 | -#: ui/00default.xml:310 | |
1522 | +#: ui/00default.xml:45 | |
1523 | 1523 | msgid "Save selected" |
1524 | 1524 | msgstr "Salvar seleção" |
1525 | 1525 | |
... | ... | @@ -1531,15 +1531,15 @@ msgstr "Salvar seleção para arquivo" |
1531 | 1531 | msgid "Save trace file" |
1532 | 1532 | msgstr "Salvar arquivo de trace" |
1533 | 1533 | |
1534 | -#: ui/99debug.xml:206 | |
1534 | +#: ui/99debug.xml:348 | |
1535 | 1535 | msgid "Screen Trace" |
1536 | 1536 | msgstr "Trace de tela" |
1537 | 1537 | |
1538 | -#: ui/00default.xml:379 | |
1538 | +#: ui/00default.xml:114 | |
1539 | 1539 | msgid "Screen size" |
1540 | 1540 | msgstr "Tamanho da tela" |
1541 | 1541 | |
1542 | -#: ui/80rexx.xml:261 | |
1542 | +#: ui/00default.xml:89 | |
1543 | 1543 | msgid "Scripts" |
1544 | 1544 | msgstr "Scripts" |
1545 | 1545 | |
... | ... | @@ -1551,15 +1551,15 @@ msgstr "Secondary space:" |
1551 | 1551 | msgid "Secure connection was successful." |
1552 | 1552 | msgstr "Conexão segura efetuada com sucesso." |
1553 | 1553 | |
1554 | -#: ui/00default.xml:339 | |
1554 | +#: ui/00default.xml:74 | |
1555 | 1555 | msgid "Select Field" |
1556 | 1556 | msgstr "Selecionar campo" |
1557 | 1557 | |
1558 | -#: ui/00default.xml:338 | |
1558 | +#: ui/00default.xml:73 | |
1559 | 1559 | msgid "Select all" |
1560 | 1560 | msgstr "Selecionar tudo" |
1561 | 1561 | |
1562 | -#: ui/00default.xml:391 | |
1562 | +#: ui/00default.xml:126 | |
1563 | 1563 | msgid "Select by rectangles" |
1564 | 1564 | msgstr "Seleção retangular" |
1565 | 1565 | |
... | ... | @@ -1571,7 +1571,7 @@ msgstr "Selecione arquivo a receber" |
1571 | 1571 | msgid "Select file to send" |
1572 | 1572 | msgstr "Selecione arquivo a enviar" |
1573 | 1573 | |
1574 | -#: ui/00default.xml:376 | |
1574 | +#: ui/00default.xml:111 | |
1575 | 1575 | msgid "Select font" |
1576 | 1576 | msgstr "Selecione fonte" |
1577 | 1577 | |
... | ... | @@ -1595,7 +1595,7 @@ msgstr "Certificado auto assinado" |
1595 | 1595 | msgid "Self signed certificate in certificate chain" |
1596 | 1596 | msgstr "Certificado auto assinado na cadeia de certificados" |
1597 | 1597 | |
1598 | -#: ui/00default.xml:320 | |
1598 | +#: ui/00default.xml:55 | |
1599 | 1599 | msgid "Send file" |
1600 | 1600 | msgstr "Enviar arquivo" |
1601 | 1601 | |
... | ... | @@ -1607,7 +1607,7 @@ msgstr "Enviar arquivo para o servidor" |
1607 | 1607 | msgid "Send messages to syslog" |
1608 | 1608 | msgstr "Enviar mensagens para o log do sistema" |
1609 | 1609 | |
1610 | -#: ui/00default.xml:319 | |
1610 | +#: ui/00default.xml:54 | |
1611 | 1611 | msgid "Send/Receive" |
1612 | 1612 | msgstr "Enviar/Receber" |
1613 | 1613 | |
... | ... | @@ -1619,7 +1619,7 @@ msgstr "Nome da sessão" |
1619 | 1619 | msgid "Set host charset" |
1620 | 1620 | msgstr "Define página de código do host" |
1621 | 1621 | |
1622 | -#: ui/00default.xml:357 | |
1622 | +#: ui/00default.xml:92 | |
1623 | 1623 | msgid "Set hostname" |
1624 | 1624 | msgstr "Selecione servidor" |
1625 | 1625 | |
... | ... | @@ -1639,19 +1639,19 @@ msgstr "Ativa toggles" |
1639 | 1639 | msgid "Set trace filename" |
1640 | 1640 | msgstr "Define o nome do arquivo de trace" |
1641 | 1641 | |
1642 | -#: ui/00default.xml:372 | |
1642 | +#: ui/00default.xml:107 | |
1643 | 1643 | msgid "Settings" |
1644 | 1644 | msgstr "Configurações" |
1645 | 1645 | |
1646 | -#: ui/00default.xml:394 | |
1646 | +#: ui/00default.xml:129 | |
1647 | 1647 | msgid "Show Underline" |
1648 | 1648 | msgstr "Mostrar sublinhado" |
1649 | 1649 | |
1650 | -#: ui/99debug.xml:213 | |
1650 | +#: ui/99debug.xml:355 | |
1651 | 1651 | msgid "Show test pattern" |
1652 | 1652 | msgstr "Mostrar padrão de teste" |
1653 | 1653 | |
1654 | -#: ui/00default.xml:396 | |
1654 | +#: ui/00default.xml:131 | |
1655 | 1655 | msgid "Smart paste" |
1656 | 1656 | msgstr "Colar inteligente" |
1657 | 1657 | |
... | ... | @@ -1935,15 +1935,15 @@ msgid "" |
1935 | 1935 | "This version of %s was built without support for secure sockets layer (SSL)." |
1936 | 1936 | msgstr "Esta versão do %s foi gerada sem suporte para conexões seguras (SSL)." |
1937 | 1937 | |
1938 | -#: ui/00default.xml:414 | |
1938 | +#: ui/00default.xml:149 | |
1939 | 1939 | msgid "Toolbar" |
1940 | 1940 | msgstr "Barra de ferramentas" |
1941 | 1941 | |
1942 | -#: ui/99debug.xml:205 | |
1942 | +#: ui/99debug.xml:347 | |
1943 | 1943 | msgid "Trace" |
1944 | 1944 | msgstr "Trace" |
1945 | 1945 | |
1946 | -#: ui/00default.xml:385 | |
1946 | +#: ui/00default.xml:120 | |
1947 | 1947 | msgid "Track Cursor" |
1948 | 1948 | msgstr "Mostrar posição do cursor" |
1949 | 1949 | |
... | ... | @@ -2156,7 +2156,7 @@ msgstr "Unsupported passthru host session" |
2156 | 2156 | msgid "Unsupported socks 4 proxy" |
2157 | 2157 | msgstr "Unsupported socks 4 proxy" |
2158 | 2158 | |
2159 | -#: ui/00default.xml:398 | |
2159 | +#: ui/00default.xml:133 | |
2160 | 2160 | msgid "Use +/- for field navigation" |
2161 | 2161 | msgstr "Usar teclas +/- para navegar por campos" |
2162 | 2162 | |
... | ... | @@ -2169,7 +2169,7 @@ msgstr "Variável" |
2169 | 2169 | msgid "Version %s - Revision %s" |
2170 | 2170 | msgstr "Versão %s - Revisão %s" |
2171 | 2171 | |
2172 | -#: ui/99debug.xml:208 | |
2172 | +#: ui/99debug.xml:350 | |
2173 | 2173 | msgid "View Field Delimiters" |
2174 | 2174 | msgstr "Mostrar delimitadores de campo" |
2175 | 2175 | |
... | ... | @@ -2197,7 +2197,7 @@ msgstr "Europa ocidental (ISO 8859-1)" |
2197 | 2197 | msgid "White" |
2198 | 2198 | msgstr "Branco" |
2199 | 2199 | |
2200 | -#: ui/00default.xml:425 | |
2200 | +#: ui/00default.xml:160 | |
2201 | 2201 | msgid "Window" |
2202 | 2202 | msgstr "Janela" |
2203 | 2203 | |
... | ... | @@ -2265,19 +2265,19 @@ msgstr "_Procurar" |
2265 | 2265 | msgid "_Color table:" |
2266 | 2266 | msgstr "Tabela de cores:" |
2267 | 2267 | |
2268 | -#: ui/00default.xml:367 | |
2268 | +#: ui/00default.xml:102 | |
2269 | 2269 | msgid "_Connect" |
2270 | 2270 | msgstr "_Conectar" |
2271 | 2271 | |
2272 | -#: ui/00default.xml:368 | |
2272 | +#: ui/00default.xml:103 | |
2273 | 2273 | msgid "_Disconnect" |
2274 | 2274 | msgstr "_Desconectar" |
2275 | 2275 | |
2276 | -#: ui/99debug.xml:200 | |
2276 | +#: ui/00default.xml:61 | |
2277 | 2277 | msgid "_Edit" |
2278 | 2278 | msgstr "_Editar" |
2279 | 2279 | |
2280 | -#: ui/80rexx.xml:257 | |
2280 | +#: ui/00default.xml:36 | |
2281 | 2281 | msgid "_File" |
2282 | 2282 | msgstr "_Arquivo" |
2283 | 2283 | |
... | ... | @@ -2305,11 +2305,11 @@ msgstr "Nome do _Host:" |
2305 | 2305 | msgid "_Local file name:" |
2306 | 2306 | msgstr "Arquivo _local:" |
2307 | 2307 | |
2308 | -#: ui/00default.xml:357 | |
2308 | +#: ui/00default.xml:92 | |
2309 | 2309 | msgid "_Network" |
2310 | 2310 | msgstr "_Rede" |
2311 | 2311 | |
2312 | -#: ui/00default.xml:382 | |
2312 | +#: ui/00default.xml:117 | |
2313 | 2313 | msgid "_Options" |
2314 | 2314 | msgstr "_Opções" |
2315 | 2315 | |
... | ... | @@ -2337,7 +2337,7 @@ msgstr "Arquivo _texto" |
2337 | 2337 | msgid "_To" |
2338 | 2338 | msgstr "_Para" |
2339 | 2339 | |
2340 | -#: ui/80rexx.xml:259 | |
2340 | +#: ui/00default.xml:87 | |
2341 | 2341 | msgid "_View" |
2342 | 2342 | msgstr "_Exibir" |
2343 | 2343 | ... | ... |
pw3270-i686.nsi.in
... | ... | @@ -88,7 +88,8 @@ SubSection "@PACKAGE@" SecMain |
88 | 88 | file "/oname=$INSTDIR\@localedir@\pt_BR\LC_MESSAGES\@PACKAGE@.mo" ".bin\Release\@localedir@\pt_BR\LC_MESSAGES\@PACKAGE@.mo" |
89 | 89 | |
90 | 90 | # Save DataDir |
91 | - WriteRegStr HKLM "Software\@PACKAGE@" "datadir" $INSTDIR | |
91 | + WriteRegStr HKLM "Software\@PACKAGE@" "datadir" "$INSTDIR" | |
92 | + WriteRegStr HKLM "Software\@PACKAGE@" "appName" "$INSTDIR\@PACKAGE@.exe" | |
92 | 93 | |
93 | 94 | # define uninstaller name |
94 | 95 | writeUninstaller $INSTDIR\uninstall.exe | ... | ... |
pw3270-x86_64.nsi.in
... | ... | @@ -91,7 +91,8 @@ SubSection "@PACKAGE@" SecMain |
91 | 91 | |
92 | 92 | # Save DataDir |
93 | 93 | SetRegView 64 |
94 | - WriteRegStr HKLM "Software\@PACKAGE@" "datadir" $INSTDIR | |
94 | + WriteRegStr HKLM "Software\@PACKAGE@" "datadir" "$INSTDIR" | |
95 | + WriteRegStr HKLM "Software\@PACKAGE@" "appName" "$INSTDIR\@PACKAGE@.exe" | |
95 | 96 | |
96 | 97 | # define uninstaller name |
97 | 98 | SetRegView 32 | ... | ... |
src/plugins/hllapi/calls.c
... | ... | @@ -35,6 +35,8 @@ |
35 | 35 | #include <pw3270/hllapi.h> |
36 | 36 | #include <stdio.h> |
37 | 37 | #include <lib3270/log.h> |
38 | + #include <process.h> | |
39 | + #include <time.h> | |
38 | 40 | #include "client.h" |
39 | 41 | |
40 | 42 | #undef trace |
... | ... | @@ -114,124 +116,209 @@ |
114 | 116 | |
115 | 117 | /*--[ Implement ]------------------------------------------------------------------------------------*/ |
116 | 118 | |
117 | - __declspec (dllexport) DWORD __stdcall hllapi_init(LPSTR mode) | |
119 | + static DWORD load_remote(void) | |
118 | 120 | { |
119 | - if(!mode) | |
120 | - return HLLAPI_STATUS_SYSTEM_ERROR; | |
121 | + // Get pointers to the pipe based calls | |
122 | + int f; | |
121 | 123 | |
122 | - trace("%s(%s)",__FUNCTION__,(char *) mode); | |
124 | + trace("%s: Loading pipe based calls",__FUNCTION__); | |
125 | + for(f=0;entry_point[f].name;f++) | |
126 | + *entry_point[f].call = entry_point[f].pipe; | |
123 | 127 | |
124 | - if(mode && *mode) | |
128 | + return HLLAPI_STATUS_SUCCESS; | |
129 | + } | |
130 | + | |
131 | + static DWORD start_session(void) | |
132 | + { | |
133 | + char buffer[80]; | |
134 | + char appName[4096]; | |
135 | + HKEY hKey = 0; | |
136 | + unsigned long datalen = 4096; | |
137 | + DWORD ret; | |
138 | + STARTUPINFO si; | |
139 | + PROCESS_INFORMATION pi; | |
140 | + | |
141 | + // Get application path | |
142 | + *appName = 0; | |
143 | + if(RegOpenKeyEx(HKEY_LOCAL_MACHINE,"Software\\pw3270",0,KEY_QUERY_VALUE,&hKey) == ERROR_SUCCESS) | |
125 | 144 | { |
126 | - // Get pointers to the pipe based calls | |
127 | - int f; | |
145 | + unsigned long datatype; // #defined in winnt.h (predefined types 0-11) | |
146 | + if(RegQueryValueExA(hKey,"appName",NULL,&datatype,(LPBYTE) appName,&datalen) != ERROR_SUCCESS) | |
147 | + *appName = 0; | |
148 | + RegCloseKey(hKey); | |
149 | + } | |
150 | + | |
151 | + trace("%s appname=%s\n",__FUNCTION__,appName); | |
152 | + | |
153 | + snprintf(buffer,79,"%s --session=\"H%06d\"",appName,getpid()); | |
128 | 154 | |
129 | - trace("%s: Loading pipe based calls",__FUNCTION__); | |
130 | - for(f=0;entry_point[f].name;f++) | |
131 | - *entry_point[f].call = entry_point[f].pipe; | |
155 | + ZeroMemory( &si, sizeof(si) ); | |
156 | + si.cb = sizeof(si); | |
157 | + ZeroMemory( &pi, sizeof(pi) ); | |
132 | 158 | |
159 | + // si.dwFlags = STARTF_PREVENTPINNING; | |
160 | + trace("App: %s",appName); | |
161 | + trace("CmdLine: %s",buffer); | |
162 | + | |
163 | + if(!CreateProcess(NULL,buffer,NULL,NULL,0,NORMAL_PRIORITY_CLASS,NULL,NULL,&si,&pi)) | |
164 | + return GetLastError(); | |
165 | + | |
166 | + CloseHandle( pi.hProcess ); | |
167 | + CloseHandle( pi.hThread ); | |
168 | + | |
169 | + // Wait for pipe to be available | |
170 | + time_t timer = time(0)+5; | |
171 | + HANDLE hPipe = INVALID_HANDLE_VALUE; | |
172 | + WIN32_FIND_DATA FindFileData; | |
173 | + | |
174 | + snprintf(buffer,4095,"\\\\.\\pipe\\H%06d_a",getpid()); | |
175 | + | |
176 | + while(hPipe == INVALID_HANDLE_VALUE && time(0) < timer) | |
177 | + { | |
178 | + Sleep(10); | |
179 | + hPipe = FindFirstFile(buffer, &FindFileData); | |
133 | 180 | } |
134 | - else | |
181 | + | |
182 | + if(hPipe == INVALID_HANDLE_VALUE) | |
183 | + return - ETIMEDOUT; | |
184 | + | |
185 | + CloseHandle(hPipe); | |
186 | + | |
187 | + // Load PIPE calls for the created session | |
188 | + snprintf(buffer,79,"H%06d:a",getpid()); | |
189 | + ret = load_remote(); | |
190 | + if(ret) | |
191 | + return ret; | |
192 | + | |
193 | + snprintf(buffer,79,"H%06d:A",getpid()); | |
194 | + hSession = session_new((const char *) buffer); | |
195 | + trace("%s ok hSession=%p\n",__FUNCTION__,hSession); | |
196 | + | |
197 | + return hSession ? HLLAPI_STATUS_SUCCESS : HLLAPI_STATUS_SYSTEM_ERROR; | |
198 | + } | |
199 | + | |
200 | + static DWORD load_dll(void) | |
201 | + { | |
202 | + // Direct mode, load lib3270.dll, get pointers to the calls | |
203 | + static const char *dllname = "lib3270.dll." PACKAGE_VERSION; | |
204 | + | |
205 | + int f; | |
206 | + HMODULE kernel; | |
207 | + HANDLE cookie = NULL; | |
208 | + DWORD rc; | |
209 | + HANDLE (*AddDllDirectory)(PCWSTR NewDirectory); | |
210 | + BOOL (*RemoveDllDirectory)(HANDLE Cookie); | |
211 | + UINT errorMode; | |
212 | + char datadir[4096]; | |
213 | + | |
214 | + trace("hModule=%p",hModule); | |
215 | + if(hModule) | |
216 | + return -EBUSY; | |
217 | + | |
218 | + kernel = LoadLibrary("kernel32.dll"); | |
219 | + AddDllDirectory = (HANDLE (*)(PCWSTR)) GetProcAddress(kernel,"AddDllDirectory"); | |
220 | + RemoveDllDirectory = (BOOL (*)(HANDLE)) GetProcAddress(kernel,"RemoveDllDirectory"); | |
221 | + | |
222 | + // Notify user in case of error loading protocol DLL | |
223 | + // http://msdn.microsoft.com/en-us/library/windows/desktop/ms680621(v=vs.85).aspx | |
224 | + errorMode = SetErrorMode(1); | |
225 | + | |
226 | + memset(datadir,' ',4095); | |
227 | + datadir[4095] = 0; | |
228 | + | |
229 | + if(hllapi_get_datadir(datadir)) | |
135 | 230 | { |
136 | - // Direct mode, load lib3270.dll, get pointers to the calls | |
137 | - static const char *dllname = "lib3270.dll." PACKAGE_VERSION; | |
138 | - | |
139 | - int f; | |
140 | - HMODULE kernel; | |
141 | - HANDLE cookie = NULL; | |
142 | - DWORD rc; | |
143 | - HANDLE (*AddDllDirectory)(PCWSTR NewDirectory); | |
144 | - BOOL (*RemoveDllDirectory)(HANDLE Cookie); | |
145 | - UINT errorMode; | |
146 | - char datadir[4096]; | |
147 | - | |
148 | - trace("hModule=%p",hModule); | |
149 | - if(hModule) | |
150 | - return -EBUSY; | |
151 | - | |
152 | - kernel = LoadLibrary("kernel32.dll"); | |
153 | - AddDllDirectory = (HANDLE (*)(PCWSTR)) GetProcAddress(kernel,"AddDllDirectory"); | |
154 | - RemoveDllDirectory = (BOOL (*)(HANDLE)) GetProcAddress(kernel,"RemoveDllDirectory"); | |
155 | - | |
156 | - // Notify user in case of error loading protocol DLL | |
157 | - // http://msdn.microsoft.com/en-us/library/windows/desktop/ms680621(v=vs.85).aspx | |
158 | - errorMode = SetErrorMode(1); | |
159 | - | |
160 | - memset(datadir,' ',4095); | |
161 | - datadir[4095] = 0; | |
162 | - | |
163 | - if(hllapi_get_datadir(datadir)) | |
164 | - { | |
165 | - char buffer[4096]; | |
166 | - wchar_t path[4096]; | |
231 | + char buffer[4096]; | |
232 | + wchar_t path[4096]; | |
167 | 233 | |
168 | - mbstowcs(path, datadir, 4095); | |
169 | - trace("Datadir=[%s] AddDllDirectory=%p RemoveDllDirectory=%p\n",datadir,AddDllDirectory,RemoveDllDirectory); | |
170 | - if(AddDllDirectory) | |
171 | - cookie = AddDllDirectory(path); | |
234 | + mbstowcs(path, datadir, 4095); | |
235 | + trace("Datadir=[%s] AddDllDirectory=%p RemoveDllDirectory=%p\n",datadir,AddDllDirectory,RemoveDllDirectory); | |
236 | + if(AddDllDirectory) | |
237 | + cookie = AddDllDirectory(path); | |
172 | 238 | |
173 | 239 | #ifdef DEBUG |
174 | - snprintf(buffer,4096,"%s\.bin\Debug\%s",datadir,dllname); | |
240 | + snprintf(buffer,4096,"%s\.bin\Debug\%s",datadir,dllname); | |
175 | 241 | #else |
176 | - snprintf(buffer,4096,"%s\%s",datadir,dllname); | |
242 | + snprintf(buffer,4096,"%s\%s",datadir,dllname); | |
177 | 243 | #endif // DEBUG |
178 | 244 | |
179 | - hModule = LoadLibrary(buffer); | |
180 | - | |
181 | - trace("%s hModule=%p rc=%d",buffer,hModule,(int) GetLastError()); | |
245 | + hModule = LoadLibrary(buffer); | |
182 | 246 | |
183 | - if(hModule == NULL) | |
184 | - { | |
185 | - // Enable DLL error popup and try again with full path | |
186 | - SetErrorMode(0); | |
187 | - hModule = LoadLibraryEx(buffer,NULL,LOAD_LIBRARY_SEARCH_DEFAULT_DIRS|LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR); | |
188 | - } | |
247 | + trace("%s hModule=%p rc=%d",buffer,hModule,(int) GetLastError()); | |
189 | 248 | |
190 | - rc = GetLastError(); | |
191 | - | |
192 | - trace("%s hModule=%p rc=%d",buffer,hModule,(int) rc); | |
193 | - } | |
194 | - else | |
249 | + if(hModule == NULL) | |
195 | 250 | { |
196 | - hModule = LoadLibrary(dllname); | |
197 | - rc = GetLastError(); | |
251 | + // Enable DLL error popup and try again with full path | |
252 | + SetErrorMode(0); | |
253 | + hModule = LoadLibraryEx(buffer,NULL,LOAD_LIBRARY_SEARCH_DEFAULT_DIRS|LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR); | |
198 | 254 | } |
199 | 255 | |
200 | - SetErrorMode(errorMode); | |
256 | + rc = GetLastError(); | |
257 | + | |
258 | + trace("%s hModule=%p rc=%d",buffer,hModule,(int) rc); | |
259 | + } | |
260 | + else | |
261 | + { | |
262 | + hModule = LoadLibrary(dllname); | |
263 | + rc = GetLastError(); | |
264 | + } | |
265 | + | |
266 | + SetErrorMode(errorMode); | |
201 | 267 | |
202 | - trace("%s hModule=%p rc=%d",dllname,hModule,(int) rc); | |
268 | + trace("%s hModule=%p rc=%d",dllname,hModule,(int) rc); | |
203 | 269 | |
204 | - if(cookie && RemoveDllDirectory) | |
205 | - RemoveDllDirectory(cookie); | |
270 | + if(cookie && RemoveDllDirectory) | |
271 | + RemoveDllDirectory(cookie); | |
206 | 272 | |
207 | - if(kernel) | |
208 | - FreeLibrary(kernel); | |
273 | + if(kernel) | |
274 | + FreeLibrary(kernel); | |
209 | 275 | |
210 | - if(!hModule) | |
211 | - return rc; | |
276 | + if(!hModule) | |
277 | + return rc; | |
212 | 278 | |
213 | - // Get library entry pointers | |
214 | - for(f=0;entry_point[f].name;f++) | |
215 | - { | |
216 | - void *ptr = (void *) GetProcAddress(hModule,entry_point[f].name); | |
279 | + // Get library entry pointers | |
280 | + for(f=0;entry_point[f].name;f++) | |
281 | + { | |
282 | + void *ptr = (void *) GetProcAddress(hModule,entry_point[f].name); | |
217 | 283 | |
218 | - trace("%d %s=%p\n",f,entry_point[f].name,ptr); | |
284 | + trace("%d %s=%p\n",f,entry_point[f].name,ptr); | |
219 | 285 | |
220 | - if(!ptr) | |
221 | - { | |
222 | - trace("Can´t load \"%s\"\n",entry_point[f].name); | |
223 | - hllapi_deinit(); | |
224 | - return -ENOENT; | |
225 | - } | |
226 | - *entry_point[f].call = ptr; | |
286 | + if(!ptr) | |
287 | + { | |
288 | + trace("Can´t load \"%s\"\n",entry_point[f].name); | |
289 | + hllapi_deinit(); | |
290 | + return -ENOENT; | |
227 | 291 | } |
292 | + *entry_point[f].call = ptr; | |
293 | + } | |
294 | + | |
295 | + return HLLAPI_STATUS_SUCCESS; | |
296 | + } | |
297 | + | |
298 | + __declspec (dllexport) DWORD __stdcall hllapi_init(LPSTR mode) | |
299 | + { | |
300 | + if(!mode) | |
301 | + return HLLAPI_STATUS_SYSTEM_ERROR; | |
302 | + | |
303 | + trace("%s(%s)",__FUNCTION__,(char *) mode); | |
304 | + | |
305 | + if(mode && *mode) | |
306 | + { | |
307 | + if(strcasecmp(mode,"start") == 0 || strcasecmp(mode,"new") == 0) | |
308 | + return start_session(); | |
228 | 309 | |
310 | + load_remote(); | |
229 | 311 | } |
312 | + else | |
313 | + { | |
314 | + load_dll(); | |
315 | + } | |
316 | + | |
230 | 317 | // Get session handle |
231 | 318 | hSession = session_new((const char *) mode); |
232 | 319 | trace("%s ok hSession=%p\n",__FUNCTION__,hSession); |
233 | 320 | |
234 | - return hSession ? 0 : -1; | |
321 | + return hSession ? HLLAPI_STATUS_SUCCESS : HLLAPI_STATUS_SYSTEM_ERROR; | |
235 | 322 | } |
236 | 323 | |
237 | 324 | __declspec (dllexport) DWORD __stdcall hllapi_deinit(void) | ... | ... |
src/plugins/hllapi/pluginmain.c
... | ... | @@ -36,6 +36,7 @@ |
36 | 36 | #include <pw3270/v3270.h> |
37 | 37 | #include <pw3270/ipcpackets.h> |
38 | 38 | #include <lib3270/actions.h> |
39 | + #include <lib3270/charset.h> | |
39 | 40 | |
40 | 41 | /*--[ Defines ]--------------------------------------------------------------------------------------*/ |
41 | 42 | |
... | ... | @@ -306,11 +307,11 @@ |
306 | 307 | |
307 | 308 | case HLLAPI_PACKET_SET_HOST_CHARSET: |
308 | 309 | send_result(source,lib3270_set_host_charset( lib3270_get_default_session_handle(), |
309 | - (unsigned char *) ((struct hllapi_packet_set_text *) source->buffer)->text)); | |
310 | + (const char *) ((struct hllapi_packet_set_text *) source->buffer)->text)); | |
310 | 311 | break; |
311 | 312 | |
312 | 313 | case HLLAPI_PACKET_GET_HOST_CHARSET: |
313 | - send_text(source,lib3270_get_host_charset(lib3270_get_default_session_handle())); | |
314 | + send_text(source,(char *) lib3270_get_host_charset(lib3270_get_default_session_handle())); | |
314 | 315 | break; |
315 | 316 | |
316 | 317 | default: | ... | ... |
src/plugins/hllapi/testprogram.c
... | ... | @@ -38,7 +38,7 @@ |
38 | 38 | |
39 | 39 | int main(int numpar, char *param[]) |
40 | 40 | { |
41 | - const char *session = "pw3270:a"; | |
41 | + const char *session = "new"; | |
42 | 42 | |
43 | 43 | printf("init(%s)=%d\n",session,(int) hllapi_init((LPSTR) session)); |
44 | 44 | printf("revision=%d\n",(int) hllapi_get_revision()); | ... | ... |