Suchergebnisse

Suchergebnisse 1-30 von insgesamt 873.

  • Benutzer-Avatarbild

    @Amelie Wenn Du Glück hast, lässt sich für deinen PDF-Drucker, die JPEG-Kompression einstellen. Auszug aus Google: PDF-XChange Standard Move to the Control Panel. Click Devices and Printers. Right-click PDF-XChange Standard and select Printing preferences. The Printing preferences dialog box will open. Click the Compression tab and reduce the JPEG quality to 50%: Du müsstest natürlich die JPEG-Qualität, wenn es beim ​PDF-XChange Light auch solche Einstellungen gibt, erhöhen was im Endeffekt auch…

  • Benutzer-Avatarbild

    Hi. Handelt es sich um reale Ordner/Dateien auf der HD? Wenn ich mir Dein Bild anschaue, könnte ich mir für das TreeView auch das COM-Interface INameSpaceTreeControl vorstellen da Du hier nur einen bestimmten Pfad mit Ordnern darstellst und nicht das komplette linke Fenster des Explorer. Bei der Ansicht der Dateien, würde ich dann IExplorerBrowser::FillFromObject <- IShellItem (Ordner) vom INameSpaceTreeControl nehmen. Der zeigt dann nur das rechte Fenster des Explorer mit den Dateien, inkl. Ico…

  • Benutzer-Avatarbild

    @Dideldum Hmm, TreeView mit Ordner und DGV mit Dateien und Icons usw. Klingt so als würdest sowas wie den Explorer nachprogrammieren wollen. Wenn ja, dann schau Dir mal das COM Interface IExplorerBrowser an -> learn.microsoft.com/en-us/wind…idl_core-iexplorerbrowser

  • Benutzer-Avatarbild

    Zitat von stefan67: „Function CH341InitParallel(iIndex: cardinal; iMode :cardinal): boolean; Stdcall; external 'CH341DLL.DLL';“ Würde ich folgendermaßen nach VB6 übersetzen: Private Declare Function CH341InitParallel Lib "CH341DLL.DLL" (ByVal iIndex as Long, ByVal iMode as Long) As Long. Zitat von stefan67: „procedure CH341CloseDevice(iIndex: cardinal); Stdcall; external 'CH341DLL.DLL';“ Könnte ein Sub sein. Private Declare Sub CH341CloseDevice Lib "CH341DLL.DLL" (ByVal iIndex As Long) Zitat von…

  • Benutzer-Avatarbild

    Hi. Datentyp Cardinal -> oreilly.com/library/view/delphi-in-a/1565926595/re33.html VB6 kennt aber keine unsigned Datentypen (z.B. ULong), bis auf Byte. Ich würde dennoch einfach mal den Datentyp Long (32bit) verwenden.

  • Benutzer-Avatarbild

    Hi. Das geht über "Erweiterte Antwort". Da kannst Du Dateianhänge hochladen. In der ZIP dürfen keine ausführbaren Dateien enthalten sein! Speziell die Ordner BIN und OBJ (bzw. deren UnterOrdner von BIN und OBJ) von Deinem Projekt sollten leer sein.

  • Benutzer-Avatarbild

    Hi Entweder Du klickst auf dieses durchgestrichene Auge der die Tags automatisch einfügt, oder Du schreibst die Tags [spoiler]​[/spoiler] selber. Innerhalb dieser Tags kannst Du dann andere Tags einfügen.

  • Benutzer-Avatarbild

    Zitat von dherr: „Ich werde demnächst meine Programmversion hier einstellen. Ist das OK für dich?“ Ja klar, ich erhebe da keinen Anspruch auf den ursprünglichen Code.

  • Benutzer-Avatarbild

    Hi Also, ich hatte geschrieben das MMDeviceEnumerator.GetDefaultAudioEndpoint direkt unter "If MMDeviceEnumerator IsNot Nothing Then" kommt. Bei Dir steht der Code aber ganz wo anders. Dann fragst Du bei MMDeviceEnumerator.GetDefaultAudioEndpoint -> MMDevice gar nicht die ID ab (MMDevice.GetId(DevId)) -> String. Diesen String vergleichst mit der ID, die Du innerhalb von MMDeviceCollection.Item(Device, MMDevive) -> MMDevive.GetId(DevId) bekommst. Huch, da hab ich mich wohl vertippelt: MMDevive so…

  • Benutzer-Avatarbild

    Hi Das was Du noch machen möchtest, kommt unter der Zeile If MMDeviceEnumerator IsNot Nothing Then und ja, der Aufruf von MMDeviceEnumerator.GetDefaultAudioEndpoint gibt 0 = S_Ok zurück, wenn der Aufruf erfolgreich war. Denn dann kannst Du MMDevice.GetId abfragen. Genauso wie nach der Zeile If MMDeviceCollection.Item(... nur das Du hier nur die ID brauchst. Den Rest nicht bis auf das Marshal.ReleaseComObject

  • Benutzer-Avatarbild

    Hi Zunächst brauchst Du eine zusätzliche Enum VB.NET-Quellcode (5 Zeilen) Im Interface IMMDeviceEnumerator entsprechend die Funktion GetDefaultAudioEndpoint anpassen. VB.NET-Quellcode (3 Zeilen) Im Grunde rufst "MMDeviceEnumerator.GetDefaultAudioEndpoint(DATA_FLOW.Render, Role.Multimedia, MMDevice)" auf, lass Dir dann mit MMDevice.GetId die Id ausgeben. Diese Id vergleichst mit der Id, die Du über die Enumeration aller Rendergeräte ermitteln kannst. Stimmen die Ids überein, hast Du das derzeit e…

  • Benutzer-Avatarbild

    Zitat von dherr: „Leider ist da keine Eigenschaft dabei, die vermittelt, welches Soundgerät gerade aktuell ist“ Wenn Du Dir meinen Code anschaust, dann fällt Dir sicher IMMDeviceEnumerator::GetDefaultAudioEndpoint auf. Die MS-Doku sagt dazu: Die GetDefaultAudioEndpoint-Methode ruft den Standard-Audioendpunkt für die angegebene Datenflussrichtung und -rolle ab. Das wäre das, was Du noch suchst. Auch wenn ich diese Interface-Funktion nicht komplett übersetzt habe, sollte es Dir keine Probleme bere…

  • Benutzer-Avatarbild

    @dherr Weil heute Sonntag ist und ich etwas Zeit hatte. Auf die schnelle zusammengeklöppelt und alles in einer Form. Daher sicher Verbesserungswürdig. Einige Interface-Funktionen sind nicht komplett da diese sowieso nicht benötigt werden. Wenn man die entsprechenden PKeys kennt, kann man die Info direkt auslesen anstatt durch alle Properties zu enumerieren. (Versteckter Text)

  • Benutzer-Avatarbild

    Hi Solche Sachen sind standardmäßig nicht in .NET vorhanden. Das muss man entweder selbst programmieren oder falls vorhanden, entsprechende Nuget-Pakete oder Drittanbieter-DLLs verwenden. Ich bin mir sehr sicher das Du einige Beispiele zu den von mir vorgeschlagenen Möglichkeiten im Internet findest.

  • Benutzer-Avatarbild

    @dherr k.A. ob @RodFromGermany dafür das gleiche nutzt. Mein erster Gedanke geht hier her: learn.microsoft.com/en-us/wind…enumerating-audio-devices Mein zweiter Gedanke geht in Richtung WinRT: learn.microsoft.com/de-de/uwp/…meration?view=winrt-22621 Hier würde ich dich sogar auf den DevicePicker verweisen der einen Dialog mit den entsprechenden Geräten (Filter) anzeigt.

  • Benutzer-Avatarbild

    Zitat von Haudruferzappeltnoch: „Aber @-Franky- weiß bestimmt wie man an solche Innereien kommt“ Hmm, ich würde mal die Protected Overrides Function ProcessCmdKey ausprobieren. learn.microsoft.com/en-us/dotn…y?view=windowsdesktop-8.0 Die liefert neben den Keys auch eine Message. Bei Message mal schauen ob es da Unterschiede zwischen NumPad.Enter und Return bei lParam/wParam usw. gibt.

  • Benutzer-Avatarbild

    Zitat von RodFromGermany: „Wenn solch in C# nicht vorkommt, ist es nicht .NET.“ Eher unwahrscheinlich das das jemand macht, aber diesen Namespace kannst auch in C# verwenden und wenn es etwas in C# gibt, das es in VB.NET nicht gibt, ist dann VB.NET kein .NET?

  • Benutzer-Avatarbild

    Zitat von Haudruferzappeltnoch: „So wie ich das verstanden habe, ist Microsoft.VisualBasic ein Namespace in der Programmiersprache VB und wie man sieht in einem VB.NET Projekt verwendbar“ Dieser Namespace richtet sich hauptsächlich an die, die aus der VB6 Welt kommen um ihnen den Einstieg zu VB.NET zu erleichtern. Eventuell werden die VB6 Befehle aus diesem Namespace intern auf die entsprechenden .NET Befehle gemappt. Also bei Len(String) wird intern String.Lenght ausgeführt. Da müsste man mal e…

  • Benutzer-Avatarbild

    @rrobbyy Mit der Preview kommst Du, mit den zusätzlichen Anforderungen, nicht weiter. Entweder es gibt da noch andere PDF-Viewer (NuGet) die das können was Du möchtest, oder Du programmierst Dir, leider erst ab Win10 möglich weil das über die WinRT geht, alles selber. Zum einen gibt es PDF, Seiten als Bilder anzeigen und extrahieren Damit kannst Du erstmal die Seiten einer PDF als Bilder rendern und diese zur Anzeige bringen. Nachteil: Links und ausfüllbare Felder funktionieren dann natürlich in…

  • Benutzer-Avatarbild

    Zitat von dive26: „und das ergibt keine flüssige Animation, sondern ein unschönes Flackern“ Hier müsste man dann unter Umständen einen DirectX-SwapChain einsetzen. Das bläht den Code noch weiter auf, flackert dann aber nicht mehr. Wie geschrieben, der Aufwand das selbst zu programmieren ist sehr hoch.

  • Benutzer-Avatarbild

    Zitat von dive26: „Wie schon damals, habe ich auch kein Problem das SVG zu erstellen und auch das Rendering gelingt mit "vielen" Komponenten recht einfach. Aber eben immer nur als Standbilder. Aber hier geht es ja nicht nur einfach um ein starres SVG-Bild, sondern um eine Animation im SVG.“ Das meinete ich als ich schrieb, da müsste man wohl direkt auf das XML der SVG zugreifen. ID2D1DeviceContext5::CreateSvgDocument -> ID2D1SvgDocument::xxx und weiter ID2D1SvgDocument::GetRoot -> ID2D1SvgElemen…

  • Benutzer-Avatarbild

    @dive26 Zum Thema WinRT WebView hatten wir schon mal was. -> WebView2 wirklich so umständlich zum Veröffentlichen? Auch zum Thema SVG rendern hatten wir schon mal was: -> SVG to IMG ohne externe Komponente

  • Benutzer-Avatarbild

    Jupp, viele Wege führen zum Ziel. Ob das alte Webbrowser-Control dafür noch geeignet ist, kann ich nicht sagen und ich glaub dive26 wollte nicht unbeding WebView2 verwenden/ausrollen/installieren/verteilen. Das WinRT Webbrowser-Control wäre eine alternative dazu und bis .NET 4.8.xx auch einfach per Referenz auf die Windows.winmd einfach zuverwenden auch wenn dieser noch die alte Edge-Renderengine verwendet und erst ab Win10 zur Verfügung steht.

  • Benutzer-Avatarbild

    Zitat von DTF: „Lass das bleiben mit Forms. ...die Hardwarebeschleunigt rendert ... DirectX“ Sagen wir mal so, es ist durchaus mit "ein paar Zeilen Code, ohne zusätzliche DLLs oder Referenzen" möglich, mit WIC und Direct2D, eine SVG in WinForms zu rendern und sogar zu erstellen. Ob man darüber auch animierte SVGs gerendert bekommt, kann ich im Moment nicht sagen. Du hast aber vollen Zugriff auf die XML der SVG und kannst so also neue Elemente hinzufügen/löschen/ändern usw. Die Frage ist nur, ob …

  • Benutzer-Avatarbild

    Hier war wohl @Bluespide der richtige Tippgeber in die Richtung per API SHFileOperation. Die API ist aber seit WinVista eher als veraltet zu betrachten und wenn man der Doku folgt, kommt man zu IFileOperation.

  • Benutzer-Avatarbild

    ImageTypesLibrary

    -Franky- - - Libraries / Controls

    Beitrag

    Anstatt die MagicBytes eines Bildes auszulesen, kannst auch einfach .NET nutzen. VB.NET-Quellcode (34 Zeilen) Auch das ermitteln aller Bild-Encoder wäre in .NET möglich. Alternativ wäre auch WIC eine Möglichkeit wobei WIC noch mehr Bildformate lesen kann.

  • Benutzer-Avatarbild

    Zitat von DTF: „die solche ToastsNotifications nervig finden“ Ja klar, man sollte den User nicht mit ToastMessages überschwemmen. Zitat von DTF: „Man kann sich auch selbst so ein Toast machen. Man nehme Mehl, Wasser, Salz, Hefe......“ ...und zum Nachtisch gibt es ... Nee was mir gestern Abend noch so durch den Kopf ging ist: Wenn man sich nun ein eigenes PopUp bastelt, worüber man als User nun gar keine Kontrolle hat wie oft der aufplöpt, kann man den User auch mit Messages überschwemmen. Dann d…

  • Benutzer-Avatarbild

    Zitat von Dideldum: „Dadurch erhalten Sie eine offizielle AppID im Windows Store, die dann für Toast-Benachrichtigungen verwendet werden kann. Dieser Prozess erfordert jedoch zusätzliche Schritte und die Einreichung Ihrer App in den Microsoft Store.“ Nö. Ja, Dein Programm benötigt eine AppID. Das ist aber auch nur eine eindeutige GUID oder Name um Dein Programm von den anderen zu unterscheiden bzw. damit eine ToastMessage dein Programm zugeordnet werden kann bzw. damit Du über den ToastManager a…

  • Benutzer-Avatarbild

    Zitat von Dideldum: „Von diesem Toastbrot, äh, ToastNotification höre ich eben zum ersten mal.“ Aber gesehen hast die sicher schon zigmal. Am einfachsten sind die Standard-Toast. Bei Generic-Toast hast noch mehr Möglichkeiten aber hier müssen auch bestimmte Bedingungen erfüllt sein. Scheduled-Toast die Zeitgesteuert angezeigt werden können usw. Es gibt wohl ein entsprechendes CommunityToolKit dafür, hab das aber bisher nicht genutzt. Hier noch ein Link was so mit der ToastNotification geht: docs…

  • Benutzer-Avatarbild

    @Dideldum Ahh, die NotifyIcon Klasse und da der BalloonTip. Jupp, da dürfte die Duration aus Abwärtskompatibilität noch drin sein. Ab Win8?, zumindest ab Win10 (falls per RegKey nicht wieder umgestellt auf die alten BalloonTips) sollte der Aufruf des NotifyIcon.BalloonTip auf die Windows ToastNotification umgeleitet werden wenn ich nicht falsch liege. Allerdings dann auch nur mit beschränkten Gestalltungsmöglichkeiten. Also wenn ich nicht komplett daneben liege, dann kannst auch gleich direkt di…