Jak używać GDI+? Funkcja nie chce mi działać.

0

Witam.

Potrzebuję napisać pewną wstawkę dll do Autohotkeya która będzie mi rysować sporo linii za pomocą GDI+. W samym AHK nie ma żadnych problemów po za wydajnością jednak kiedy wstawiam ten kod do CodeBlock'a to ciągle pisze mi, że GdipDrawLine nie jest zadeklarowany. Już wcześniej w podobny sposób pisałem dll do AHK lecz nigdy jeszcze nie wykorzystywałem GDI w tych wstawkach a w języku c/c++ nie ogarniam jeszcze za bardzo wszystkiego.

#include <windows.h>
#include <objidl.h>
#include <gdiplus.h>

void DrawFrq(float abuf[], int n, int w, int pGraphics, int pPen){
    for(int i=0;i<n;i++){
        float x = (float)w/n*i;
        GdipDrawLine(pGraphics, pPen, x, 200, x, abuf[i]);
    }
    return;
}
0

#include <Gdiplusflat.h>?

0

fatal error: Gdiplusflat.h: No such file or directory

a jak daje #include <gdiplus/Gdiplusflat.h> to jest to samo co na początku czyli

C:\Users\xXx\Desktop\Błażej\fft\code\c\dll2\dll2\main.cpp|9|error: 'GdipDrawLine' was not declared in this scope

0

Czy jest jakiś powód dla którego tak kombinujesz, zamiast użyć GDI+ normalnie tak jak się go używa?

0

Co to znaczy normalnie? Jak już wspomniałem w c++ jestem cienki a to co wstawiłem to to jak mi się wydawało, że tak powinien wyglądać kod.
A to co kombinuje to narysowanie wielu linii wykorzystując gotowe elementy GDI+ utworzone w Autohotkey'u w celu poprawy wydajności.

0
#include <Gdiplusflat.h>
...

DllExports::GdipDrawLine(pGraphics, pPen, x, 200, x, abuf[i]);

1 użytkowników online, w tym zalogowanych: 0, gości: 1