Paules-PC-Forum.de Anzeige:

Microsoft Windows Intune: PC-Verwaltung und -Sicherheit in der Cloud: Updateverwaltung, Anti-Virus und vieles mehr!


Zurück   Paules-PC-Forum.de > Programmierung > XProfan

XProfan Alles rund um die Programmiersprache XProfan.

EM-Tippspiel

Paule bei Facebook


Paule bei Twitter


Letzte Forenthemen
Gehe zum ersten neuen Beitrag Algorithmen Teil IV...
Aufrufe: 3361, Antworten: 129
Gehe zum ersten neuen Beitrag Hamachi deinstallieren
Aufrufe: 58, Antworten: 5
Gehe zum ersten neuen Beitrag Bundesliga-Tippspiel Saision...
Aufrufe: 7670, Antworten: 187
Gehe zum ersten neuen Beitrag PPF - Spiel "Wörter weiter...
Aufrufe: 26970, Antworten: 4223
Gehe zum ersten neuen Beitrag PPF - Shoppingwahn
Aufrufe: 50963, Antworten: 1397
Gehe zum ersten neuen Beitrag Pc lahmt plötzlich
Aufrufe: 186, Antworten: 6
Gehe zum ersten neuen Beitrag PC fährt nicht mehr hoch.
Aufrufe: 0, Antworten: 0
Gehe zum ersten neuen Beitrag Von Live CD Windowspfad...
Aufrufe: 329, Antworten: 19
Gehe zum ersten neuen Beitrag Captur 2.2 (Snow Leo)
Aufrufe: 28, Antworten: 0
Gehe zum ersten neuen Beitrag Captur 2.3 (Lion)
Aufrufe: 34, Antworten: 0
Zeige:





Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 19.06.2011, 21:48   #1 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard XProfan identifizieren

Zum Thema Quellcode-Erkennung: Was meint ihr, mit welchen Befehlen/Funktionswörtern lässt sich ein XProfan-Quellcode am besten identifizieren? Was fehlt in quasi keinem Code?
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist gerade online   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 19.06.2011, 23:29   #2 (Direktlink)
RGH
Forenmaskottchen
 
Benutzerbild von RGH
 
Registriert seit: 08.02.2009
Ort: Nußloch (bei Heidelberg)
Beiträge: 550
Standard

Hallo Frank,
ich denke mal, die meisten Programme benötigen WAITINPUT. Meines Wissens gibt es den Befehl in anderen Sprachen nicht.

Gruß
Roland
__________________
Pentium D 2,8 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon HD5450 1024 MB / Windows 7(32) - XProfan X2.0c
AMD Athlon II X2 2,9 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon 3000 / Windows 7(64) - XProfan X2.0c


http://www.xprofan.de
RGH ist offline   Mit Zitat antworten
Alt 20.06.2011, 07:18   #3 (Direktlink)
Super-Moderator
 
Benutzerbild von Jac de Lad
 
Registriert seit: 06.02.2009
Ort: Coswig
Alter: 27
Beiträge: 1.159
Standard

Oder progend. Du kannst ja nach mehreren Indizien suchen.
__________________
XProfan-Profi (XProfan X2+XPIA)
http://jacdelad.bplaced.net
http://jacdelad.square7.ch
Jac de Lad ist offline   Mit Zitat antworten
Alt 20.06.2011, 10:15   #4 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

ProgEnd benutze ich selber nie, WaitInput ist wohl schon eine gute Wahl.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist gerade online   Mit Zitat antworten
Alt 20.06.2011, 10:24   #5 (Direktlink)
Super-Moderator
 
Benutzerbild von Jac de Lad
 
Registriert seit: 06.02.2009
Ort: Coswig
Alter: 27
Beiträge: 1.159
Standard

Aber mit mehreren Befehlen ist es sicherer.
__________________
XProfan-Profi (XProfan X2+XPIA)
http://jacdelad.bplaced.net
http://jacdelad.square7.ch
Jac de Lad ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 20.06.2011, 11:21   #6 (Direktlink)
AHT
Super-Moderator
 
Registriert seit: 15.02.2009
Beiträge: 10.786
Standard

Ich würde auch mehrere Sachen nehmen. WAITINPUT kommt bei mir zum Beispiel öfters nicht vor.
__________________
______________

Bitte Schnelltest durchführen: Neuer Virus, ahnungslose User seit Monaten infiziert!

Mfg

AHT
AHT ist offline   Mit Zitat antworten
Alt 20.06.2011, 12:58   #7 (Direktlink)
Forenmaskottchen
 
Benutzerbild von ts-soft
 
Registriert seit: 16.05.2010
Ort: Berlin
Beiträge: 724
Standard

Gibt doch einen ganzen Haufen Profantypischer Befehle:
WhileLoop, EndWhile usw. ...
__________________
Gruß Thomas

Wenn mir früher jemand gesagt hätte, ich würde
freiwillig eine Wanze mit mir herum tragen und sie
auch noch selbst aufladen, hätte ich laut gelacht.

Heute habe ich ein Smartphone.


http://realsource.de
ts-soft ist gerade online   Mit Zitat antworten
Alt 20.06.2011, 14:30   #8 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

Ja, geht mir halt darum, mit möglichst wenig zeitfressendem Aufwand viele Codes zu identifizieren. Ich glaube, mit waitinput und endproc bin ich auf der sicheren Seite.

Schonmal danke für eure Vorschläge!
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist gerade online   Mit Zitat antworten
Alt 20.06.2011, 14:58   #9 (Direktlink)
Weiß worum´s geht
 
Benutzerbild von JörgG
 
Registriert seit: 08.12.2009
Ort: Mecklenburg
Beiträge: 202
Standard

aber endproc kommt auch oft in anderen Sprachen vor. Profantypischer ist schon eher
Code:
Assign, reset, parameters oder vllt. whileloop.
Gruß Jörg
JörgG ist offline   Mit Zitat antworten
Alt 20.06.2011, 16:17   #10 (Direktlink)
Forenmaskottchen
 
Registriert seit: 23.01.2011
Ort: Bernburg
Alter: 58
Beiträge: 759
Standard

Hallo

Assign und Reset ist nicht unbedingt profantypisch. Das hat Profan aus Pascal übernommen. Hier wäre dann eine tiefergehende Analyse notwendig. Wenn nach Zwischenraum kein # folgt, ist es kein Profan.
Insgesamt denke ich, kann man das Problem nicht an einem einzelnen Schlüsselwort festmachen. Ich würde da eher mehrere Schlüsselworte nutzen und als Gegenprobe dann noch "typische" Ausdrücke aus anderen Sprachen als Ausschlußkriterium, Wird dann zwar aufwendig aber dürfte bei kluger Auswahl recht sicher sein.

Gruß Volkmar
Volkmar ist gerade online   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 20.06.2011, 18:14   #11 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

Ich brauche nur eine Unterscheidung zwischen XProfan, PureBasic und Assembler. Da reichen die 2-3 Schlüsselworte ja.
Hintergrund ist mein in der Mache befindliche Lemon-Editor, der mit diesen Sprachen arbeiten soll, mit Hauptaugenmerk auf XProfan.
Bei Assembler muss ich sicherstellen, das nicht nur XPIA-tauglicher Code verwendet wird.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist gerade online   Mit Zitat antworten
Alt 20.06.2011, 18:41   #12 (Direktlink)
Forenmaskottchen
 
Benutzerbild von ts-soft
 
Registriert seit: 16.05.2010
Ort: Berlin
Beiträge: 724
Standard

Zitat:
Zitat von Frabbing Beitrag anzeigen
Bei Assembler muss ich sicherstellen, das nicht nur XPIA-tauglicher Code verwendet wird.
Denk dran, PB unterstützt auch alle ASM-Wörter!
__________________
Gruß Thomas

Wenn mir früher jemand gesagt hätte, ich würde
freiwillig eine Wanze mit mir herum tragen und sie
auch noch selbst aufladen, hätte ich laut gelacht.

Heute habe ich ein Smartphone.


http://realsource.de
ts-soft ist gerade online   Mit Zitat antworten
Alt 20.06.2011, 19:05   #13 (Direktlink)
Stammuser
 
Benutzerbild von Andreas Miethe
 
Registriert seit: 08.02.2009
Ort: Bielefeld
Alter: 53
Beiträge: 428
Standard

While, EndWhile und Waitinput ist auch nicht sicher, siehe hier :

Code:
'#############################
'API-basierende Vorlage :
'XProfan
'#############################
'Author : Andreas Miethe
'2004
'#############################
'Thema : Grundgerüst
'#############################

SetTrueColor 1
Set("FastMode",1)

'------------------------
'Header-Dateien einbinden
'------------------------
$H windows.ph
$H structs.ph
$H messages.ph
'------------------------

'------------------------
'Konstanten
'------------------------
DEF &MenuItem1  1
DEF &MenuItem2  2
DEF &MenuItem3  3
'------------------------

'------------------------
'Definitionen
'------------------------
DEF HiWord(1) And(&(1)>>16,$FFFF)
DEF LoWord(1) And(&(1),$FFFF)
DEF MakeLong(2) Or(&(1),&(2)<<16)
'------------------------

'------------------------
'Strukturen
'------------------------
STRUCT MyWindowClass = ~WndClass
STRUCT MyMsg = ~Msg
STRUCT Point = ~POINT
STRUCT PS = ~PAINTSTRUCT
'------------------------

'------------------------
'Globale Deklarationen
'------------------------
DECLARE WindowClass#, Msg#, Size#
DECLARE Window&
DECLARE hMenu&,hPopup&
DECLARE MPoint#
DECLARE Statusbar&
DECLARE PS#
DECLARE Accel#,AccelTable&
Declare Message&
'------------------------

'------------------------
'Includes
'------------------------
'------------------------

'------------------------
PROC CreateControls
  '------------------------
  'Fensterelemente anlegen
  'Buttons usw. koennen mit
  'den Profanbefehlen angelegt
  'werden, muss kein API sein.
  '------------------------
  
  '-------------------------
  'Menue anlegen
  '-------------------------
  hMenu& = ~CreateMenu()
  hPopUp& = ~CreatePopupMenu()
  ~Appendmenu(hMenu&,~MF_POPUP | ~MF_STRING,hPopUp&,"Datei")
  ~Appendmenu(hpopup&,~MF_BYCOMMAND | ~MF_STRING,&MenuItem1,"Ende \tSTRG+C")
  ~SetMenu(Window&,hMenu&)
  ~DrawMenuBar(Window&)
  
  '-------------------------
  'InfoZeile anlegen
  '-------------------------
  Statusbar& = Create("Statuswindow",Window&,"")
  
  '-------------------------
  'AcceleratorTable anlegen
  '-------------------------
  DIM Accel#,18 'reicht für drei Tastenkombinationen
  'in diesem Fall STRG+C und F10
  'STRG+C
  WORD  Accel#,0 =  ~FCONTROL | ~FVIRTKEY | ~FNOINVERT
  WORD  Accel#,2 =  $43'VK_C
  WORD  Accel#,4 =  &MenuItem1
  'F10
  'kann auf diese Weise genutzt werden. Natürlich auch alle anderen Tastenkombinationen.
  WORD  Accel#,6 =  ~FVIRTKEY | ~FNOINVERT
  WORD  Accel#,8 =  $79'VK_F10
  WORD  Accel#,10 =  &MenuItem2
  
  WORD  Accel#,12 =  ~FCONTROL | ~FVIRTKEY | ~FNOINVERT
  WORD  Accel#,14 =  $0D'STRG+ENTER
  WORD  Accel#,16 =  &MenuItem3
  
  AccelTable& = ~CreateAcceleratorTable(Accel#,3)'Accelerator-Table mit zwei Einträgen anlegen
  DISPOSE Accel#
ENDPROC

'------------------------
PROC OnEndSession
  '------------------------
  'Aufräumarbeiten
  '------------------------
  MessageBox("Windows will beenden! Das lassen wir nicht zu !","Meldung",64)
  Return 0 ' 0 beendet Windows nicht, alles andere beendet Windows !
ENDPROC

'------------------------
PROC OnClose
  '------------------------
  'Aufräumarbeiten
  '------------------------
  MessageBox("und Tschüss !","Ende...",262144)
  ~DestroyAcceleratorTable(AccelTable&)
  ~UnRegisterClass(WindowClass#,%hinstance)
  DISPOSE WindowClass#
  ~DestroyMenu(hMenu&)
  ~DestroyMenu(hPopUp&)
  ~PostQuitMessage(0)
ENDPROC

'------------------------
PROC OnHelp
  '------------------------
  'Hilfe
  '------------------------
  MessageBox("Hilfe gibt es hier noch nicht !","Meldung",64)
ENDPROC


'------------------------
PROC OnKontextMenu
  '------------------------
  'rechte Maustaste zeigt Menü an !
  '------------------------
  DIM mPoint#,Point
  ~GetCursorPos(mPoint#)
  ~TrackPopupMenu(hpopup&,~TPM_LEFTALIGN | ~TPM_RIGHTBUTTON,mPoint#.x&,mPoint#.y&,0,hWnd&,0)
  DISPOSE mPoint#
ENDPROC

'------------------------
PROC OnResize
  '------------------------
  'auf Grössenänderung des Fensters reagieren
  SetWindowPos Statusbar& = 0,0-0,0
ENDPROC

'------------------------
PROC OnPaint
  '------------------------
  'Neuzeichnen des Fensterinhaltes
  DECLARE OldFont&
  PARAMETERS DC&
  OldFont& = ~SelectObject(DC&,~GetStockObject(~DEFAULT_GUI_FONT))
  ~SetBkMode(DC&,~Transparent)
  ~SetTextColor(DC&,RGB(0,0,255))
  ~TextOut(DC&,10,10,"Das ist ein RePaint-Test",24)
  ~SelectObject(DC&,OldFont&)
ENDPROC

'------------------------
PROC WindowCB
  '------------------------
  'WindowCallback fürs Hauptfenster
  '------------------------
  PARAMETERS hWnd&, hMsg&, wParam&, lParam&
  
  '------------------------
  IF hMsg& = ~WM_PAINT
    '------------------------
    'Neuzeichnen
    DIM PS#,PS
    OnPaint(~BeginPaint(hWnd&, PS#))
    ~EndPaint(hWnd&, PS#)
    DISPOSE PS#
    Return 0
  ENDIF
  
  
  '------------------------
  IF hMsg& = ~WM_MENUSELECT
    '------------------------
    'ein Menüpunkt wird selektiert
    IF LoWord(wParam&) = 1
      Settext Statusbar&,"Programm beenden"
    Else
      Settext Statusbar&,""
    ENDIF
    Return 0
  ENDIF
  
  '------------------------
  IF hMsg& = ~WM_EXITSIZEMOVE'Grössenänderung abgeschlossen
    '------------------------
    ~InvalidateRect(Window&,0,0)
  ENDIF
  '------------------------
  
  '------------------------
  IF hMsg& = ~WM_SIZE'Grössenänderung des Fensters
    '------------------------
    Return OnResize()
  ENDIF
  '------------------------
  
  '------------------------
  IF hMsg& = ~WM_CONTEXTMENU'rechte Mautaste
    '------------------------
    Return OnKontextMenu()
  ENDIF
  '------------------------
  
  
  '------------------------
  IF hMsg& = ~WM_HELP'F1
    '------------------------
    Return OnHelp()
  ENDIF
  '------------------------
  
  '------------------------
  IF hMsg& = ~WM_QUERYENDSESSION'Windows-Ende
    '------------------------
    Return OnEndSession()
  ENDIF
  '------------------------
  
  '------------------------
  IF hMsg& = ~WM_CLOSE'Programm-Ende
    '------------------------
    OnClose
  ENDIF
  '------------------------
  
  '------------------------
  IF hMsg& = ~WM_COMMAND
    '------------------------
    IF LoWord(wParam&) = &MenuItem1 'MenuItem abfragen
      SendMessage(hWnd&,~WM_CLOSE,0,0)
    ENDIF
    IF LoWord(wParam&) = &MenuItem2 'MenuItem abfragen
      Messagebox("F10 gedrückt !","Meldung",64)
    ENDIF
    IF LoWord(wParam&) = &MenuItem3 'MenuItem abfragen
      Messagebox("STRG+ENTER gedrückt !","Meldung",64)
    ENDIF
  ENDIF
  '------------------------
  
  Return ~DefWindowProc(hWnd&, hMsg&, wParam&, lParam&)
ENDPROC

'------------------------
PROC Main
  '------------------------
  'Hauptschleife
  '------------------------
  DECLARE Classname$,WindowTitle$,WindowIcon$
  DIM WindowClass#,MyWindowClass
  DIM Msg#,MyMsg
  Classname$ = "XPrfWndClass"
  WindowTitle$ = "Dummy"
  WindowIcon$ = "A"
  
  WITH WindowClass#
    .style& = 0
    .lpfnWndProc& = ProcAddr(WindowCB,4)
    .cbClsExtra& = 0
    .cbWndExtra& = 0
    .hInstance& = %HInstance
    .hIcon& = ~LoadIcon(%hInstance,Addr(WindowIcon$))
    .hCursor& = ~LoadCursor(0, ~IDC_ARROW)
    .hbrBackground& = ~CreateSolidBrush(~GetSysColor(~COLOR_3DFACE))
    .lpszMenuName& = Addr(Classname$)
    .lpszClassName& = Addr(Classname$)
  ENDWITH
  
  IF ~RegisterClass(WindowClass#) = 0
    MessageBox("Fehler beim Registrieren der Anwendung !","Fehler...",16)
    END
  ENDIF
  
  Window& = ~CreateWindowEx( \
  0,                     \
  Addr(Classname$),      \
  Addr(WindowTitle$),    \
  ~ws_OverlappedWindow,  \
  ~cw_UseDefault,        \
  ~cw_UseDefault,        \
  ~cw_UseDefault,        \
  ~cw_UseDefault,        \
  0,                     \
  0,                     \
  %HInstance,            \
  0)
  
  CreateControls()
  
  ~ShowWindow(Window&, ~SW_SHOWNORMAL)
  ~UpdateWindow(Window&)
  
  Repeat
    Message& = ~GetMessage(Msg#, 0, 0, 0)
    ~TranslateAccelerator(Window&,AccelTable&,Msg#)
    ~TranslateMessage(Msg#)
    ~DispatchMessage(Msg#)
  Until Message& <= 0
  DISPOSE Msg#
ENDPROC

Main()
__________________
Gruss
Andreas

______________________
http://www.ampsoft.eu

Profan 3.3 - XProfanX2
Windows 95,98,ME,2000,XP
Vista - Windows 7 32 / 64 Bit

ASUS X93S - Intel Core I7 - NVIDIA GForce GT540M - 8GB Arbeitsspeicher
Andreas Miethe ist offline   Mit Zitat antworten
Alt 20.06.2011, 19:32   #14 (Direktlink)
Forenmaskottchen
 
Registriert seit: 23.01.2011
Ort: Bernburg
Alter: 58
Beiträge: 759
Standard

PureBasic
MessageRequester
OpenWindow
Gadget
WaitWindowEvent

XProfan
WaitInput
Parameters
EndProc

Zumindest Parameters kommt bei Andreas vor . Aber so ganz eindeutig wird das mit so wenig sicher nicht. Ich kann in XProfan durchaus ein Programm schreiben, daß eine Prozedur OpenWindow enthält. Und der Aufruf ist dann das Wort OpenWindow. Wäre wohl dann zu den Schlüsselworten noch eine zumindest oberflächliche Syntaxanalyse notwendig.
Und ASM muß eindeutig von ASM innerhalb von PureBasic unterschieden werden.

Gruß Volkmar
Volkmar ist gerade online   Mit Zitat antworten
Alt 20.06.2011, 19:55   #15 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

Zitat:
Zitat von ts-soft Beitrag anzeigen
Denk dran, PB unterstützt auch alle ASM-Wörter!
Da benutze ich keine Mnemonics. includelib wird schon recht sicher funktionieren, das ist quasi in jedem Code zu finden.

Das alles betrifft auch nur die automatische Prüfung. Wer auf Nummer sicher gehen will oder wo es Probleme gibt, der nutzt es manuell.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist gerade online   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Antwort

  Paules-PC-Forum.de > Programmierung > XProfan

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
XProfan-Lehrbuch und XProfan-Manager Dietmar Horn Helfer & Tools 3 02.01.2010 13:06
Bin neu in Xprofan mcmini12 XProfan-Stammtisch 1 07.03.2009 17:30
PC eindeutig(!) identifizieren Hagis Hardware - Problemlösungen 3 28.07.2005 14:52
Ram Speicher identifizieren 648314 Hardware - Problemlösungen 8 14.08.2004 02:55
intallierte Soundkarte identifizieren ? skazi Windows 95/98/ME/2000/NT 5 22.07.2003 20:04



Alle Zeitangaben in WEZ +2. Es ist jetzt 12:47 Uhr.


Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Powered by vBCMS® 2.7.0 ©2002 - 2012 vbdesigns.de
(c) Paules-PC-Forum.de

::: Impressum :::

Search Engine Optimization by vBSEO 3.3.2