Seite 3 von 4

Re: [ERLEDIGT] Anfänger Frage in Sachen Multilanguage :(

Verfasst: 27.11.2013 07:29
von Danilo
inc hat geschrieben:PS:
das mit dem ToolTip übersetzen geht auch?
Du kannst so alle Strings übersetzen.

Code: Alles auswählen

GadgetToolTip(#Gadget, tr(Text$))

Re: [ERLEDIGT] Anfänger Frage in Sachen Multilanguage :(

Verfasst: 28.11.2013 03:47
von udg
Danilo hat geschrieben: Du kannst so alle Strings übersetzen.

Code: Alles auswählen

GadgetToolTip(#Gadget, tr(Text$))
Tool Tip wurde nun auch übersetzt mit:

Code: Alles auswählen

GadgetToolTip(#Button_6, Language()\Translate("Open File"))
Es wollte einfach nicht gleich funktionieren da ich eine einzige Klammer ")" vergessen hatte :oops:

grüße

Re: Anfänger Frage in Sachen Multilanguage :(

Verfasst: 28.11.2013 03:52
von udg
Hallo,
dank Eurer Hilfe :praise: habe ich jetzt das Programm soweit hinbekommen , dass ich es per klick und ohne ini in eine andere
Sprache übersetzen kann. Es war trotz nur ein paar Zeilen Text, doch eine ganze Menge Schreibkram. Aber fein, nun gehts.

@ MOD
Kann als ERLEDIGT markiert werden !

Evtl. möchte jemand dies als Template verwenden oder rein in die Tutorial Sektion. Darf gern benutzt werden.

Beste Grüße und Vielen Dank nochmal an alle die mir geholfen haben.
Erstellt mit PureBasic 4.61

Code: Alles auswählen

;**************************************************************************
;*                                                                        *
;*                                                                        *
;*   on the fly, die Sprache in einem Programm per "Butten Klick ändern   *
;*                                                                        *
;*   Beispiel Code:     made by inc. 28/11/2013                           *
;*                                                                        *
;*             mit:     Map Translate.s()                                 *
;*                      AddMapElement(Language()                          *
;*                      FindMapElement(Language()                         *
;*                                                                        *
;*   erstellt mit PureBasic: Version 4.61                                 *
;*                                                                        *
;*                                                                        *
;**************************************************************************

;übersetzen

Structure Language
   Map Translate.s()
EndStructure

Global NewMap Language.Language()

Enumeration
  #Window_0   ; Fenstertitel: how to set another Language
  #ListIcon_0
  #Frame3D_0  ; Big 3D Frame Items
  #Button_0   ; Add Button
  #Button_1   ; Delete Button
  #Frame3D_1  ; Haupt Frame3dD Bezeichnung: Manage
  #String_3
  #Text_4     ; Frame3dD Bezeichnung Name: 
  #String_4
  #Text_5     ; Frame3dD Bezeichnung Filename: 
  #String_6
  #Text_7;    ; TextGadget "Kommandozeile"
  #Button_6   ; FileRequest Button [...]
  #Button_7   ; ABOUT BUTTON
  #Button_8   ; Advanced >>   Button  (Pulldown Menu)
  #Button_9   ; Exit Button
  #English    ; map Language
  #Deutsch    ; map Language
  #Spanish    ; map Language
  EndEnumeration
  
  Define.l Event, EventWindow, EventGadget, EventType, EventMenu, ExamineScreenModes, SetGadgetText
  
;///////////////////////////////////////////////////////////////////////////////////////////////
;/////////////////////////    hier Sprachübersetzung Globals    ////////////////////////////////
;///////////////////////////////////////////////////////////////////////////////////////////////
;- Deutsch
; Definieren
;{// Änder Sprache zu DEUTSCH wenn im pulldown menu auf DEUTSCH geklickt wird
    AddMapElement(Language(), "Deutsch")
    With Language()
      \Translate("Open with application...") = "Mit Programm öffnen..." ;Line 01
      \Translate("Title") = "Bezeichnung"                               ;Line 02  ; Column Spalte 1 links
      \Translate("Items") = "Dateien"                                   ;Line 03
      \Translate("Add") = "Hinzufügen"                                  ;Line 04
      \Translate("Delete") = "Löschen"                                  ;Line 05
      \Translate("Manage") = "Bearbeiten"                               ;Line 06
      \Translate("Filename") = "Dateiname"                              ;Line 07 ; ändert "Filename" in "Dateiname" mit Anführungsszeich
      \Translate("Title:") = "Bezeichnung:"                             ;Line 08
      \Translate("Filename:") = "Datei:"                                ;Line 09
      \Translate("Command line:") = "Kommandozeile:"                    ;Line 10
      \Translate("About") = "Über"                                      ;Line 11
      \Translate("Advanced >>") = "Erweitert >>"                        ;Line 12
      \Translate("Exit") = "Beenden"                                    ;Line 13
      \Translate("Register/unregister shell extension") = "Kontextmenü-Eintrag registrieren/löschen";Line 14
      \Translate("Language") = "Sprache"                                ;Line 15
      \Translate("Filename") = "Dateipfad"                              ;Line 16  ; Column Spalte 2 mitte
      \Translate("Command line") = "Kommandozeile"                      ;Line 17
      \Translate("Open File") = "Datei auswählen"                       ;Line 18
      \Translate("ExE Files") = "ExE Dateien"                           ;Line 19
      \Translate("All Files") = "Alle Dateien"                          ;Line 20
      \Translate("Open File") = "Öffne Datei"                           ;Line 21  ; Tool Tip Tag
    EndWith
;}
;- Spanisch
; Definieren
;{// Änder Sprache zu SPANISCH wenn im pulldown menu auf SPANISCH geklickt wird
    AddMapElement(Language(), "Spanish")
    With Language()
      \Translate("Open with application...") = "Abrir con la aplicación...";Line 01
      \Translate("Title") = "Nombre"                                       ;Line 02  ; Column Spalte 1 links
      \Translate("Items") = "Elementos"                                    ;Line 03
      \Translate("Add") = "Añadir"                                         ;Line 04
      \Translate("Delete") = "Borrar"                                      ;Line 05
      \Translate("Manage") = "Administrar"                                 ;Line 06
      \Translate("Filename") = "Nombre de Archivo"                         ;Line 07 ; ändert "Filename" in "Dateiname" mit Anführungsszeich
      \Translate("Title:") = "Nombre:"                                     ;Line 08
      \Translate("Filename:") = "Nombre de Archivo:"                       ;Line 09
      \Translate("Command line:") = "Línea de Comandos:"                   ;Line 10
      \Translate("About") = "Acerca de"                                    ;Line 11
      \Translate("Advanced >>") = "Avanzado >>"                            ;Line 12
      \Translate("Exit") = "Salir"                                         ;Line 13
      \Translate("Register/unregister shell extension") = "Registrar/cancelar extensión shell";Line 14
      \Translate("Language") = "Idioma"                                    ;Line 15
      \Translate("Filename") = "Nombre de archivo"                         ;Line 16  ; Column Spalte 2 mitte
      \Translate("Command line") = "Línea de comandos"                     ;Line 17
      \Translate("Open File") = "Abrir Archivo"                            ;Line 18
      \Translate("ExE Files") = "Archivos ExE"                             ;Line 19
      \Translate("All Files") = "Todos los archivos"                       ;Line 20
      \Translate("Open File") = "Abrir Archivo"                            ;Line 21  ; Tool Tip Tag
    EndWith
;}
;- Englisch
; Definieren
;{// HAUPTSPRACHE ENGLISCH
    AddMapElement(Language(), "English")                                   ;Hauptsprache
    With Language()
      \Translate("Open with application...") = "Open with application..."  ;Line 01
      \Translate("Title") = "Title"                                        ;Line 02  ; Column Spalte 1 links
      \Translate("Items") = "Items"                                        ;Line 03
      \Translate("Add") = "Add"                                            ;Line 04
      \Translate("Delete") = "Delete"                                      ;Line 05
      \Translate("Manage") = "Manage"                                      ;Line 06
      \Translate("Filename") = "Filename"                                  ;Line 07 ; ändert "Filename" in "Dateiname" mit Anführungsszeich
      \Translate("Title:") = "Title:"                                      ;Line 08
      \Translate("Filename:") = "Filename:"                                ;Line 09
      \Translate("Command line:") = "Command line:"                        ;Line 10
      \Translate("About") = "About"                                        ;Line 11
      \Translate("Advanced >>") = "Advanced >>"                            ;Line 12
      \Translate("Exit") = "Exit"                                          ;Line 13
      \Translate("Register/unregister shell extension") = "Register/unregister shell extension";Line 14
      \Translate("Language") = "Language"                                  ;Line 15
      \Translate("Filename") = "Filename"                                  ;Line 16  ; Column Spalte 2 mitte
      \Translate("Command line") = "Command line"                          ;Line 17
      \Translate("Open File") = "Open File"                                ;Line 18
      \Translate("ExE Files") = "ExE Files"                                ;Line 19
      \Translate("All Files") = "All Files"                                ;Line 20
      \Translate("Open File") = "Open File"                                ;Line 21  ; Tool Tip Tag
EndWith
;}    
;///////////////////////////////////////////////////////////////////////////////////////////////
;/////////////////////////    ende Sprachübersetzung Globals ///////////////////////////////////
;///////////////////////////////////////////////////////////////////////////////////////////////

; Hauptsprache ENGLISCH
;- ButtonGadgets
    OpenWindow(0, 359, 116, 366, 507, "how to set another Language", #PB_Window_SystemMenu | #PB_Window_ScreenCentered )
      ListIconGadget(#ListIcon_0, 20, 29, 328, 199, "Title", 84, #PB_ListIcon_FullRowSelect | #PB_ListIcon_AlwaysShowSelection)
      Frame3DGadget(#Frame3D_0, 11, 11, 346, 255, "Items")
      ButtonGadget(#Button_0, 98, 235, 66, 22, "Add")
      ButtonGadget(#Button_1, 197, 235, 66, 22, "Delete")
      Frame3DGadget(#Frame3D_1, 12, 272, 345, 199, "Manage")
      StringGadget(#String_3, 21, 426, 326, 23, Chr(34) + "Filename" + Chr(34)) ; Chr(34) + "bezeichnung" + Chr(34) setzt einen Namen in Anführungsszeichen
      TextGadget(#Text_4, 23, 301, 65, 18, "Title:")
      StringGadget(#String_4, 21, 319, 326, 23, "")     ; erstes EingabeFeld
      TextGadget(#Text_5, 23, 354, 100, 14, "Filename:")
      StringGadget(#String_6, 21, 371, 288, 23, "")     ; zweites Eingabefeld wo die datei ausgewählt wird
      TextGadget(#Text_7, 23, 405, 100, 18, "Command line:")
      ButtonGadget(#Button_6, 314, 371, 33, 22, "...")
      ButtonGadget(#Button_7, 45, 479, 74, 22, "About")
      ButtonGadget(#Button_8, 147, 479, 78, 22, "Advanced >>")
      ButtonGadget(#Button_9, 250, 479, 74, 22, "Exit")
      ;///////////
      ; ADVANCED BUTTON MENU
      If CreatePopupMenu(0)                                 ; Hier pop-up menu beginnen
        MenuItem(1, "Register\ unregister Shell Extension") ; Alle möglichen Kommandos für Menu kreation
        MenuBar()
        MenuItem(#Deutsch,"Deutsch")
        MenuItem(#Spanish,"Español")
        MenuItem(#English,"English")        
      EndIf
      
      ;SetGadgetAttribute(#ListIcon_0, #PB_ListIcon_List, #True)
          AddGadgetColumn(#ListIcon_0, 1, "Filename", 120)          ; übersetzen in deutsch und spanisch
          AddGadgetColumn(#ListIcon_0, 2, "Command line", 120)      ; übersetzen in deutsch und spanisch   
          GadgetToolTip(#Button_6, ("Open File"))                   ; Tool Tip Tag über dem Button [...]
  Repeat
  Event = WaitWindowEvent()
  
    ;///////////
    ; Button_6 zum Öffnen einer Datei um sie in das Tool einzubinden  
      Select Event 
          Case #PB_Event_Gadget
               EventGadget = EventGadget()
                  If EventGadget = #Button_6 ; <---- Datei öffnen, Fenster Arbeitsplatz anzeigen öffnen
                      OpenFileRequester(Language()\Translate("Open File"), "", Language()\Translate("ExE Files") + " (*.exe)|*.exe|" + Language()\Translate("All Files") + " (*.*)|*.*", 0) ; Dialoge ebenfalls übersetzt
                  EndIf    
      EndSelect
    
      ;///////////
      ;// MENU BEFEHLE FÜR DAS POPUP MENU 
      Select EventMenu() 
          Case #Button_8
             DisplayPopupMenu(0, WindowID(0))
         EndSelect
         
;- übersetzung Deutsch
      ;///////////
      ;{ TRANSLATION hier freischalten für DEUTSCH
      ;// weiter im PopUp Menu auf Button Deutsch soll hier Funktion Translate freigeschalten werden
      Select Event
           Case #PB_Event_Menu
              Select EventMenu()
                 Case #Deutsch
                    FindMapElement(Language(), "Deutsch")
                    SetGadgetItemText(#ListIcon_0, -1, Language()\Translate("Title"),0)                     ;Line 01  ; ändert im Column die Bezeichnung der Spalte "Name" in"Dateiname"
                    SetGadgetText(#Frame3D_0, Language()\Translate("Items"))                                ;Line 02  ; Frame3dD Bezeichnung Item
                    SetGadgetText(#Button_0, Language()\Translate("Add"))                                   ;Line 03
                    SetGadgetText(#Button_1, Language()\Translate("Delete"))                                ;Line 04
                    SetGadgetText(#Frame3D_1, Language()\Translate("Manage"))                               ;Line 05
                    SetGadgetText(#Text_4, Language()\Translate("Title:"))                                  ;Line 06  ; Frame3dD Bezeichnung Name:
                    SetGadgetText(#Text_5, Language()\Translate("Filename:"))                               ;Line 07  ; Frame3dD Bezeichnung Filename:
                    SetGadgetText(#Text_7, Language()\Translate("Command line:"))                           ;Line 08  ; Frame3dD Bezeichnung Command line:
                    SetGadgetText(#Button_7, Language()\Translate("About"))                                 ;Line 09
                    SetGadgetText(#Button_8, Language()\Translate("Advanced >>"))                           ;Line 10
                    SetGadgetText(#Button_9, Language()\Translate("Exit"))                                  ;Line 11
                    SetMenuItemText(MenuItem,1, Language()\Translate("Register/unregister shell extension"));Line 12
                    SetGadgetItemText(#ListIcon_0, -1, Language()\Translate("Filename"),1)                  ;Line 13 
                    SetGadgetItemText(#ListIcon_0, -1, Language()\Translate("Command line"),2)              ;Line 14
                    GadgetToolTip(#Button_6, Language()\Translate("Open File"))                             ;Line 15 ; Tool Tip Tag
              EndSelect  
      EndSelect
      ;}
      
;- übersetzung Spanisch
      ;///////////
      ;{ TRANSLATION hier freischalten für SPANISCH
      ;// weiter im PopUp Menu auf Button ESPANOL soll hier Funktion Translate freigeschalten werden
      Select Event
           Case #PB_Event_Menu
              Select EventMenu()
                 Case #Spanish
                    FindMapElement(Language(), "Spanish")
                    SetGadgetItemText(#ListIcon_0, -1, Language()\Translate("Title"),0)                     ;Line 01  ; ändert im Column die Bezeichnung der Spalte "Name" in"Dateiname"
                    SetGadgetText(#Frame3D_0, Language()\Translate("Items"))                                ;Line 02  ; Frame3dD Bezeichnung Item
                    SetGadgetText(#Button_0, Language()\Translate("Add"))                                   ;Line 03
                    SetGadgetText(#Button_1, Language()\Translate("Delete"))                                ;Line 04
                    SetGadgetText(#Frame3D_1, Language()\Translate("Manage"))                               ;Line 05
                    SetGadgetText(#Text_4, Language()\Translate("Title:"))                                  ;Line 06  ; Frame3dD Bezeichnung Name:
                    SetGadgetText(#Text_5, Language()\Translate("Filename:"))                               ;Line 07  ; Frame3dD Bezeichnung Filename:
                    SetGadgetText(#Text_7, Language()\Translate("Command line:"))                           ;Line 08  ; Frame3dD Bezeichnung Command line:
                    SetGadgetText(#Button_7, Language()\Translate("About"))                                 ;Line 09
                    SetGadgetText(#Button_8, Language()\Translate("Advanced >>"))                           ;Line 10
                    SetGadgetText(#Button_9, Language()\Translate("Exit"))                                  ;Line 11
                    SetMenuItemText(MenuItem,1, Language()\Translate("Register/unregister shell extension"));Line 12
                    SetGadgetItemText(#ListIcon_0, -1, Language()\Translate("Filename"),1)                  ;Line 13 
                    SetGadgetItemText(#ListIcon_0, -1, Language()\Translate("Command line"),2)              ;Line 14
                    GadgetToolTip(#Button_6, Language()\Translate("Open File"))                             ;Line 15 ; Tool Tip Tag
              EndSelect  
      EndSelect    
      ;}
      
;- übersetzung Englisch
      ;///////////
      ;{ TRANSLATION hier freischalten für ENGLISCH
      ;// weiter im PopUp Menu auf Button ESPANOL soll hier Funktion Translate freigeschalten werden
      Select Event
           Case #PB_Event_Menu
              Select EventMenu()
                 Case #English
                    FindMapElement(Language(), "English")
                    SetGadgetItemText(#ListIcon_0, -1, Language()\Translate("Title"),0)                     ;Line 01  ; ändert im Column die Bezeichnung der Spalte "Name" in"Dateiname"
                    SetGadgetText(#Frame3D_0, Language()\Translate("Items"))                                ;Line 02  ; Frame3dD Bezeichnung Item
                    SetGadgetText(#Button_0, Language()\Translate("Add"))                                   ;Line 03
                    SetGadgetText(#Button_1, Language()\Translate("Delete"))                                ;Line 04
                    SetGadgetText(#Frame3D_1, Language()\Translate("Manage"))                               ;Line 05
                    SetGadgetText(#Text_4, Language()\Translate("Title:"))                                  ;Line 06  ; Frame3dD Bezeichnung Name:
                    SetGadgetText(#Text_5, Language()\Translate("Filename:"))                               ;Line 07  ; Frame3dD Bezeichnung Filename:
                    SetGadgetText(#Text_7, Language()\Translate("Command line:"))                           ;Line 08  ; Frame3dD Bezeichnung Command line:
                    SetGadgetText(#Button_7, Language()\Translate("About"))                                 ;Line 09
                    SetGadgetText(#Button_8, Language()\Translate("Advanced >>"))                           ;Line 10
                    SetGadgetText(#Button_9, Language()\Translate("Exit"))                                  ;Line 11
                    SetMenuItemText(MenuItem,1, Language()\Translate("Register/unregister shell extension"));Line 12
                    SetGadgetItemText(#ListIcon_0, -1, Language()\Translate("Filename"),1)                  ;Line 13 
                    SetGadgetItemText(#ListIcon_0, -1, Language()\Translate("Command line"),2)              ;Line 14
                    GadgetToolTip(#Button_6, Language()\Translate("Open File"))                             ;Line 15 ; Tool Tip Tag
                EndSelect  
      EndSelect        
      ;}

;//////////////////////
;-EXIT BUTTON
    Select Event
      Case #PB_Event_Gadget
        EventGadget = EventGadget()
        If EventGadget = #Button_9 ; <---- "Exit" ---> Programm Terminieren und schließen
          CloseWindow(Window_0) ; <--- Funktion: "Schließe Fenster
          Break
        EndIf
    EndSelect 
;//////////////////////
;-Hauptfenster Exit
Select Event
Case #PB_Event_CloseWindow
      EventWindow = EventWindow()
      If EventWindow = Window_0
        CloseWindow(Window_0)
        Break
      EndIf
  EndSelect
ForEver

Re: Anfänger Frage in Sachen Multilanguage :(

Verfasst: 28.11.2013 09:04
von Kiffi
@inc: Wenn Du Deinem Code noch ein EnableExplicit voranstellst, wirst Du zwei Fehler entdecken.

Grüße ... Kiffi

Re: Anfänger Frage in Sachen Multilanguage :(

Verfasst: 28.11.2013 10:16
von RSBasic
[offtopic]Warum kann Fred/freak das nicht mal so machen, dass bei Nichtbenutzung von EnableExplicit automatisch eine Compiler-Warnung ausgegeben wird wie das mal bei CreateGadgetList() der Fall war? *hoff und träum in Ewigkeit* :D[/offtopic]

Re: Anfänger Frage in Sachen Multilanguage :(

Verfasst: 28.11.2013 12:09
von Danilo
RSBasic hat geschrieben:[offtopic]Warum kann Fred/freak das nicht mal so machen, dass bei Nichtbenutzung von EnableExplicit automatisch eine Compiler-Warnung ausgegeben wird wie das mal bei CreateGadgetList() der Fall war? *hoff und träum in Ewigkeit* :D[/offtopic]
Weil das nur nerven würde.

Wenn Du EnableExplicit möchtest, schreib es hin. Wenn jemand kein EnableExplicit möchte,
schreibt er es nicht hin. Dann sollte man diese User nicht damit nerven, dass man EnableExplicit benutzen soll.
Sonst hätten sie es gleich als Standardmodus gemacht.

Re: Anfänger Frage in Sachen Multilanguage :(

Verfasst: 28.11.2013 12:13
von RSBasic
Eben, es soll auch nur nerven, damit Neulinge lernen, EnableExplicit selbstständig zu benutzen, um genau solche Fehler, die immer wieder aufgrund der Nichtbenutzung von EnableExplicit entstehen, zu vermeiden. :wink:

Re: Anfänger Frage in Sachen Multilanguage :(

Verfasst: 28.11.2013 12:19
von Danilo
RSBasic hat geschrieben:Eben, es soll auch nur nerven, damit Neulinge lernen, EnableExplicit selbstständig zu benutzen, um genau solche Fehler, die immer wieder aufgrund der Nichtbenutzung von EnableExplicit entstehen, zu vermeiden. :wink:
Wie gesagt, dann hätten sie es gleich als Standardmodus eingebaut, statt den User zu nerven es selbst ein zu schalten.
Haben sie aber nicht so eingebaut, also sollten sie uns nicht damit nerven etwas anschalten zu müssen. Dann lieber
gleich als Standardmodus setzen, den man mit DisableExplicit ausschalten kann.
Wenn ich kein Radio hören möchte, soll man mich nicht dauernd mit "Bitte Radio anschalten!" nerven. ;)

Re: Anfänger Frage in Sachen Multilanguage :(

Verfasst: 28.11.2013 15:07
von udg
Danke für den Tipp Kiffi
wenn ich von dem Befehlt "EnableExplecit" gewusst hätte und dies wichtig ist, hätte ich diesen natürlich eingebaut.

werde es mir ansehen was dann falsch im Code ist. (da ihr den Source ja schon kopiert habt und getestet, wisst Ihr natürlich schon wo der Wurm steckt ;) )
Kiffi hat geschrieben:@inc: Wenn Du Deinem Code noch ein EnableExplicit voranstellst, wirst Du zwei Fehler entdecken.
Grüße ... Kiffi
Es läuft ja, und darum habe ich keinen Grund gesehen nach Fehlern zu suchen. Der eingeschaltete Debugger meckert ja nicht rum.

Ps:
habe mich gerade belesen über diesen Befehl, verstanden,- und werde dies noch fixen. ---> Sinn erkannt.
Beschreibung
Aktiviert (EnableExplicit) oder deaktiviert (DisableExplicit) den Explizit-Modus. Wenn aktiviert, werden alle nicht ausdrücklich mittels Define, Global, Protected oder Static deklarierten Variablen nicht akzeptiert und der Compiler wird eine Fehlermeldung ausgeben. Dies kann helfen, Schreibfehler bei der Verwendung von Variablen auszumerzen.
Ich möchte hier aber auch Danilo Recht geben ;)

@ RBasic
CreateGadgetList() wird bei mir immer noch als "veralteter Code" (nicht mehr notwendig) in einem Debugger Fenster ausgegeben. Wurde also zu mindest in Version 4.61 noch nicht deaktiviert. Wäre ja dann wirklich sinnvoll in selbigen Fenster auch auszugeben, "EnableExplecit is missing" oder ähnliches.

Grüße und Danke für die Info

Re: Anfänger Frage in Sachen Multilanguage :(

Verfasst: 29.11.2013 13:04
von Heinz Mendax
Hallo,
zur gewissen Sicherheit der Ini-Dateien:
vom Dateiinhalt eine CRC-Prüfziffer (z.B. ist CRC32 vielleicht schon ausreichend)
erstellen, diese irgendwo zum Vergleich speichern. Sie kann z.B. Teil des Dateinamens
werden. (de_4C55FE.ini)

mfg
Heinz