[TUTO] Application à base de plugin
- falsam
- Messages : 7244
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: [TUTO] Application à base de plugin
Bonjour Lepiaf. En Php il existe pas mal d'applications de blogging par exemple sur lesquelles se greffe des plugins tiers. Parfois il arrive qu'un de ces plugins pertube le coeur de l'application Php voir, pirate des informations utilisateurs. A toi de savoir si tu fais confiance ou pas au créateur du plugin. Le web est là pour se faire rapidement une opinion dans ce cas précis.
G_Rom a tout dit "le problème est donc insoluble. dans un plugin , tu mets ce que tu veux... c'est clair qu'en terme de sécurité , c'est pas top..."
G_Rom a tout dit "le problème est donc insoluble. dans un plugin , tu mets ce que tu veux... c'est clair qu'en terme de sécurité , c'est pas top..."
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
-
- Messages : 510
- Inscription : dim. 25/mars/2007 13:44
- Localisation : Toulouse, France
- Contact :
Re: [TUTO] Application à base de plugin
Je ne sais pas, je ne connais pas les plug-in 3ds max mais peut-etre y a t-il une surcouche ? En tout cas, j'ai pas mal réfléchi à faire cela ces derniers temps et c'est un des grand avantage du JAVA. On peut faire un byte code et l'utiliser en tant que plus-in tout en controlant ce que peut faire ce plug-in (ca va de la gestion droits d'accès aux fichiers à la gestion du réseau).G-Rom a écrit : regarde sur le net , fait un plugin pour 3dsmax. qu'est ce qui t'empêche de faire un virus en guise de plugin ? rien.
Voilà, c'était pas pour critiquer, mais seulement pour apporter un complément
Re: [TUTO] Application à base de plugin
tu as bien fait. Si on veut se rapprocher de java ( que je ne supporte pas au passage ) , il fraudais se rapproché du processeur pour avoir accès au byte code du programme, faire des analyse avec des motifs de code , avoir une heuristique solide , etc... codé un antivirus quoi
le java, comme c'est interpréter par une machine virtuelle , tu peut intervenir en amont.
@++
le java, comme c'est interpréter par une machine virtuelle , tu peut intervenir en amont.
@++
Re: [TUTO] Application à base de plugin
Salut
ça y est, ça marche nickel (en changeant CallFunction), encore merci .
ça y est, ça marche nickel (en changeant CallFunction), encore merci .
http://blendman.blogspot.com/
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
Re: [TUTO] Application à base de plugin
Merci pour ce tuto G-Rom
Comme d'habitude.
@++
Comme d'habitude.
@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Re: [TUTO] Application à base de plugin
Merci pour ce Tuto
Re: [TUTO] Application à base de plugin
salut
Je poste juste pour signaler qu'avec la 5.31, on ne peut plus utiliser de type natifs avec les pointeurs, donc certaines parties du code sont à réadapter .
Du coup, j'ai une erreur sur ce code-ci :
à la ligne
J'ai le message "overflow in a dynamically allocated memory block"
Comme on ne peut plus mettre *nArray.c = AllocateMemory( (width * height) * 4 ) ; RGBA
j'imagine que le soucis vient de là ^^.
Mais je ne sais pas comment corriger ce pb.
Je poste juste pour signaler qu'avec la 5.31, on ne peut plus utiliser de type natifs avec les pointeurs, donc certaines parties du code sont à réadapter .
Du coup, j'ai une erreur sur ce code-ci :
Code : Tout sélectionner
Procedure.i imageToArray(pbImage.i, width.i, height.i)
*nArray = AllocateMemory( (width * height) * 4 ) ; RGBA
If StartDrawing(ImageOutput(pbImage))
DrawingMode(#PB_2DDrawing_AlphaBlend)
For y = 0 To height -1
For x = 0 To width -1
color.l = Point(x,y)
PokeC( (*nArray + (x*4) + ImageWidth(pbImage) * (y*4))+0 , Red(color) )
PokeC( (*nArray + (x*4) + ImageWidth(pbImage) * (y*4))+1 , Green(color) )
PokeC( (*nArray + (x*4) + ImageWidth(pbImage) * (y*4))+2 , Blue(color) )
PokeC( (*nArray + (x*4) + ImageWidth(pbImage) * (y*4))+3 , Alpha(color) )
Next
Next
StopDrawing()
EndIf
ProcedureReturn *nArray
EndProcedure
Code : Tout sélectionner
PokeC( (*nArray + (x*4) + ImageWidth(pbImage) * (y*4))+3 , Alpha(color) )
Comme on ne peut plus mettre *nArray.c = AllocateMemory( (width * height) * 4 ) ; RGBA
j'imagine que le soucis vient de là ^^.
Mais je ne sais pas comment corriger ce pb.
http://blendman.blogspot.com/
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
Re: [TUTO] Application à base de plugin
Quelle taille fait ton image ?
Re: [TUTO] Application à base de plugin
1024*768G-Rom a écrit :Quelle taille fait ton image ?
http://blendman.blogspot.com/
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
Re: [TUTO] Application à base de plugin
Le problème dois venir d'ailleurs, j'ai pas de soucis.
Re: [TUTO] Application à base de plugin
La taille en octet du caractère qui passe de 8 bits (mode ASCII) à 16 bits (mode UNICODE)?
Tu as alors un dépassement de 1 octets dans la zone allouée lors du traitement du dernier caractère de la zone.
>> Tester PeekA() / PokeA()
Tu as alors un dépassement de 1 octets dans la zone allouée lors du traitement du dernier caractère de la zone.
>> Tester PeekA() / PokeA()
Re: [TUTO] Application à base de plugin
Bien vu. le problème est surement là.
Re: [TUTO] Application à base de plugin
C'est surtout pour assuré l'ordre des couleurs , comme on ne maitrise pas l'interne de PB , j'ai préféré mouliné à la main chaque composante, encore plus rapide aurais été des copymemory() par ligne.
Re: [TUTO] Application à base de plugin
Je vais tester les listes pour voir .
c'est sans danger, le virus purebasic
mais non, reviensSpock a écrit :(fo que j'me tire dla , vais finir par reprendre le virus... fo pas, fo pas .. )
c'est sans danger, le virus purebasic
http://blendman.blogspot.com/
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
Re: [TUTO] Application à base de plugin
je suis tombé sur ce code, qui permet de transférer une image d'une dll vers un programme purebasic (donc l'inverse est aussi faisable).
Du coup, je me suis dit que c'était beaucoup plus simple pour modifier une image via une dll
La dll (nommée image.dll ):
Le pragramme :
Edit : le lien vers le sujet
http://www.purebasic.fr/english/viewtop ... 13&t=61904
Du coup, je me suis dit que c'était beaucoup plus simple pour modifier une image via une dll
La dll (nommée image.dll ):
Code : Tout sélectionner
ProcedureDLL.i ReturnImage (w, h, depth, backcolor)
Protected *this
Protected tmp = CreateImage(#PB_Any, w, h, depth, backcolor)
UsePNGImageEncoder()
*this = EncodeImage(tmp, #PB_ImagePlugin_PNG)
FreeImage(tmp)
ProcedureReturn *this
EndProcedure
ProcedureDLL FreeMemoryDLL (*add)
FreeMemory(*add)
EndProcedure
Le pragramme :
Code : Tout sélectionner
Prototype ReturnImage(w,h,d,bkg)
Prototype FreeMemoryDLL(*add)
UsePNGImageDecoder()
OpenLibrary(0, "image.dll")
Global ReturnImage.ReturnImage = GetFunction(0, "ReturnImage")
Global FreeMemoryDLL.FreeMemoryDLL = GetFunction(0, "FreeMemoryDLL")
*this = ReturnImage(256,256,24,#Red)
CatchImage(0, *this)
FreeMemoryDLL(*this)
OpenWindow(0,0,0,ImageWidth(0),ImageHeight(0),"",#PB_Window_ScreenCentered|#PB_Window_SystemMenu)
ImageGadget(0,0,0,0,0,ImageID(0))
Repeat:Until WaitWindowEvent() = #PB_Event_CloseWindow
http://www.purebasic.fr/english/viewtop ... 13&t=61904
Dernière modification par blendman le lun. 20/juil./2015 14:57, modifié 1 fois.
http://blendman.blogspot.com/
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english
Forum PB fr : http://www.purebasic.fr/french - Forum PB Eng : http://www.purebasic.fr/english