Poblem mit eigener dll

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

Dragonkiller

Betreff: Poblem mit eigener dll

BeitragDo, Jun 14, 2007 17:04
Antworten mit Zitat
Benutzer-Profile anzeigen
kann mir jemand sagen was ich in die dll schreiben muss damit dieser code funktioniert der sagt nähmlich immer das die fktion nicht gefunden wurde
Code: [AUSKLAPPEN]
Option Explicit

' zunächst die benötigten API-Deklarationen
Private Declare Sub keybd_event Lib "user32" ( _
  ByVal bVk As Byte, _
  ByVal bScan As Byte, _
  ByVal dwFlags As Long, _
  ByVal dwExtraInfo As Long)
 
  ' Screenshot erstellen und ggf. als Bitmap speichern
Public Function DoSnapshot(Optional ByVal bActiveWindow As Long = 0, _
  Optional ByVal sFile As String = "")

  ' Der Parameter bActiveWindow legt fest, ob ein Screenshot
  ' für das aktuelle Fenster (True) oder für gesamten
  ' Windows-Desktop (False)erstellt werden soll
 
  ' Wird für "sFile" ein Dateiname angegeben wird der
  ' Screenshot sofort als Bitmap gespeichert

  Const KEYEVENTF_KEYUP = &H2
  Const VK_MENU = &H12
  Const VK_SNAPSHOT = &H2C

  ' Screenshot erstellen ...
  If bActiveWindow Then keybd_event VK_MENU, 0, 0, 0  ' ALT-Taste
  keybd_event VK_SNAPSHOT, 0, 0, 0                    ' Druck-Taste
  keybd_event VK_SNAPSHOT, 0, KEYEVENTF_KEYUP, 0
  If bActiveWindow <> 0 Then keybd_event VK_MENU, 0, KEYEVENTF_KEYUP, 0
  DoEvents
 
  ' ... und als Bild speichern
  If sFile <> "" Then
    SavePicture Clipboard.GetData, sFile
  End If
End Function

BladeRunner

Moderator

BeitragDo, Jun 14, 2007 17:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Dam it allein ist nicht viel anzufangen, denke ich. Welchen Code verwendest Du in BB zum Aufrufen ? Hast Du eine passende decls erstellt ?
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Dragonkiller

BeitragDo, Jun 14, 2007 17:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Die decls:
lib. "Snapshot.dll"

DrawDesktop%(bActiveWindow%,sFile$) : "DoSnapshot"

der aufruf:

DrawDesktop(0,"bild.bmp")
 

Dreamora

BeitragDo, Jun 14, 2007 19:06
Antworten mit Zitat
Benutzer-Profile anzeigen
.NET DLLs als auch VB6 DLLs kannst du net verwenden, es werden CDecl DLLs erwartet. *obiger source müsste VB sein*
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Dragonkiller

BeitragFr, Jun 15, 2007 19:27
Antworten mit Zitat
Benutzer-Profile anzeigen
ja stimmt
kann man statt c auch c ++ nehmen bzw kann man das mit der winapi realisieren das der desktop in nem blitz3d window angezeigt wird?

pixelshooter

BeitragFr, Jun 15, 2007 22:31
Antworten mit Zitat
Benutzer-Profile anzeigen
ja, du kannst auch C++ benutzen. Das mit der winapi müsstest ma ausprobieren Razz
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc
 

ChristianK

BeitragFr, Jun 15, 2007 22:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
kann man das mit der winapi realisieren das der desktop in nem blitz3d window angezeigt wird?

Meinst du nur den Desktop mit den Symbolen drauf? Das geht glaub ich nicht so einfach.

Es werden immer auch die Fenster im Bild gespeichert, die gerade maximiert sind. Du müsstest das Blitz3D-Fenster erst minimieren und dann das Bild speichern. Ich kann dir aber nicht genau sagen, wie das geht. Vielleicht über den DC des Desktop-Windows die Bilddaten herausfinden ...

Dragonkiller

BeitragSa, Jun 16, 2007 14:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich möchte alles was grad so aufm monitor zu sehen is darstellen

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group