IT-Berater: Theo Gottwald (IT-Consultant) > General Tips and Discussion
pbfree lade Musik Title CD info von FreeDB sever automatisch
Peter Weis:
Habe wieder mal was aufgearbeitet für PBwin 10 werde den Quellcode in den Nächsten Tagen veröffentlichen. Muss noch ein paar Sachen aufarbeiten. ist ein COM Objekt lässt sich von Excel und Word aufrufen, geht aber auch eigenständig! Hiermit lässt sich eine Audio CD auslesen und eine CD Datenbank erstellen. Das Objekt ließt automatisch aus dem Internet Titel einer CD
Den Quellcode habe ich dazu gepackt!
Grüße Peter
Patrice Terrier:
Google translation:
--- Quote ---Have again what worked for PBwin 10 will release the source code in the next days. Still needs a few things worked up. is a COM object can be called from Excel and Word, but is also independently! This allows to read an audio CD and create a CD database. The object reads from the Internet automatically tracks on a CD
--- End quote ---
--- Quote ---So here's the source code
--- End quote ---
Peter Weis:
Hallo
Um das Objekt in Excel oder Word zu nutzen muss folgendes Programm als Administrator ausgeführt werden
--- Code: ---'------------------------------------------------------------------------------
'
' Register the pbfree.dll COM Server
' Copyright (c) 2014 Peter Weis
' All Rights Reserved.
'
'
'------------------------------------------------------------------------------
#COMPILE EXE
#DIM ALL
DECLARE FUNCTION DllRegisterServer LIB ".\pbfreedb.dll" ALIAS "DllRegisterServer" AS LONG
FUNCTION PBMAIN () AS LONG
LOCAL i AS LONG
i = DllRegisterServer
IF i = %S_OK THEN
? "Registration of PBFREEDB.dll was successful"
ELSE
? "Registration of PBFREEDB.dll has failed"
END IF
END FUNCTION
--- End code ---
in Windows XP geht das aber einfacher man braucht nur pbfreedb mit regsvr32 auszuführen!
Habe das Project neu gepackt und oben dazu gefügt
nach dem erfolgreichen registrieren der dll muss im Com Browser folgende Zeile erscheinen
die Einbindung des Objects unter Excel oder Word bedarf es leider einer 32Bit Version von Excel oder Word In der 64 Bit Version geht es nicht! Beispiel und Beschreibung folgt! :)
Ist das Hauptprogramm in PowerBASIC geschrieben geht es auch mit Excel und Word 64!
Peter Weis:
Nächster Schritt für die Verwendung mit Excel. Das gilt für Office ab Version 2007! Bei früheren Versionen ist das nicht nötig!
Die Entwickler Tools müssen eingeschaltet werden.
Das geht so wie oben im Bild beschrieben.
Also Excel Optionen einstellen!
Dabei Entwickler Tools aktivieren
Excel müßte dann so ausschauen das Tab mit Entwickler Tools siehe Bild unten müßte erscheinen.
Als nächstes bitte die das Tab Entwickler Tools anwählen das erscheint das Button „Code Anzeigen“ das müssen sie auswählen
Es erscheint dann die VBA Umgebung von Excel. Bitte wählen sie hier den Menüpunkt „Extras“ an!
Hier dann den Menüpunkt Verweise auswählen.
Hier bitte den Verweis pbfreedb anwählen. Danach kann dann das VBA Programm geschrieben werden das das Objekt nutzt
Peter Weis:
Hallo,
Wichtig ist dem Objekt die Objekt Variable zu übergeben! da diese intern für Funktionen benötigt wird
--- Code: ---Public Sub freedbinit()
Set cfreedb = New FREEDB
initcfreedb cfreedb
App.Title = ThisWorkbook.Name
App.Major = "1"
App.Minor = "1"
combo3() = Split(cfreedb.GETCDROMS, "|")
cda = 1
For i = LBound(combo3) To UBound(combo3)
If cfreedb.GetMediaInfo(combo3(i)) <> "" Then
CdAudio = cda
Exit For
End If
cda = cda + 1
Next i
cfreedb.APPNAME = App.Title
cfreedb.APPVERSION = App.Major & "." & App.Minor
cfreedb.EMAILADDRESS = "peter.weis@freenet.de"
cfreedb.CDDBSERVER = "freedb.freedb.org"
cfreedb.CDDBINTERFACE = AUTO
cfreedb.CDDBMODE = SUBMIT '%TEST
cfreedb.USEFIRSTMATCH = True
cfreedb.ALLOWSUBMISSION = False
cfreedb.INTERNETENABLE = True
With UserForm1
.CommandButton1.Enabled = False
For i = 0 To UBound(combo3()) - 1
.ComboBox1.AddItem (combo3(i))
Next i
End With
End Sub
--- End code ---
Navigation
[0] Message Index
[#] Next page
Go to full version