Wie man eine Anfrage an den technischen Support für IronPrint stellt
Wir schätzen es sehr, dass Sie sich die Zeit nehmen, uns zu helfen, IronPrint zu verbessern und alle Probleme zu lösen, die Sie möglicherweise haben. Die überwiegende Mehrheit unserer Funktionen und Updates wird durch Kundenanfragen angetrieben, und wir betrachten die Softwareentwicklung als ein zweiseitiges Gespräch zwischen unseren Kunden und unseren Entwicklern.
Um effektive Unterstützung bieten zu können, muss unser Ingenieurteam Probleme effizient reproduzieren und Regressionstests erstellen. Die meisten Probleme, denen wir begegnen, sind plattform- oder laufzeitspezifisch, daher benötigen wir sehr präzise Informationen.
Bitte senden Sie alle Support-Anfragen an support@ironsoftware.com.
Eine kurze, klare Beschreibung des Themas
Ein guter technischer Bericht muss genügend Informationen enthalten, um das Problem zu reproduzieren. Stellen Sie sich vor, Sie berichten das Problem einem Kollegen oder posten es auf Stack Overflow.
Ein Fehlerbericht sollte enthalten:
- Eine klare Beschreibung der aufgetretenen Symptome und etwaige Ideen zu deren Ursache.
- Protokolldateien (siehe unten)
- Umgebung: IronPrint-Version, Betriebssystem und .NET-Laufzeitversion, (genaue Cloud-Umgebung, falls zutreffend)
Bitte fügen Sie so viele wie möglich der folgenden Punkte hinzu, um Ihr Ticket zu priorisieren:
- Ein Beispielprojekt, das das Problem vollständig reproduziert
- Ein Stack Overflow-ähnlicher Codeausschnitt (bitte keine Screenshots vom Code)
- Screenshots von Symptomen/Ausnahmen
- Text der Ausnahmemeldung (Exception + Inner Exception)
- Der spezifische Debugging-Punkt, an dem der Prozess im Code nicht mehr funktioniert oder beendet wird
- Eingabeparameter und Ressourcen: Bild und PDF
Ein Beispielprojekt anhängen
Ein Beispielprojekt, das ein ganzes Problem isoliert abbildet, ermöglicht es unseren Ingenieuren, ein Problem einfach und schnell zu erkennen und zu verstehen.
Dies ist der Goldstandard für die Reproduzierbarkeit und wird in der Regel eine Support-Anfrage an die Spitze des Stapels beschleunigen.
Unser bevorzugtes Format ist ein gezipptes, einfaches, eigenständiges .NET-Console- oder Webanwendungsprojekt:
- Bitte aktivieren Sie die vollständige Freigabe, wenn Sie einen Google Drive- oder Dropbox-Link senden.
- Der Bin-Ordner ist nicht erforderlich, da seine Einbeziehung die Zip-Datei unnötig aufbläht.
Bitte auch einschließen:
- Eingabedateien (funktionierend und nicht funktionierend), einschließlich PDFs und Bilder.
// Example of how to capture exceptions and log them
using System;
namespace IronPrintSupportRequest
{
class Program
{
static void Main(string[] args)
{
try
{
// Simulate a part of your process where an exception might occur
ProcessIronPrintJob();
}
catch (Exception ex)
{
// Log the exception details
Console.WriteLine("An error occurred:");
Console.WriteLine($"Message: {ex.Message}");
Console.WriteLine($"Stack Trace: {ex.StackTrace}");
// If there's an inner exception, log that as well
if (ex.InnerException != null)
{
Console.WriteLine("Inner Exception:");
Console.WriteLine($"Message: {ex.InnerException.Message}");
Console.WriteLine($"Stack Trace: {ex.InnerException.StackTrace}");
}
}
}
static void ProcessIronPrintJob()
{
// Simulate a function that may throw an exception
throw new InvalidOperationException("Simulated exception for demonstration purposes.");
}
}
}
// Example of how to capture exceptions and log them
using System;
namespace IronPrintSupportRequest
{
class Program
{
static void Main(string[] args)
{
try
{
// Simulate a part of your process where an exception might occur
ProcessIronPrintJob();
}
catch (Exception ex)
{
// Log the exception details
Console.WriteLine("An error occurred:");
Console.WriteLine($"Message: {ex.Message}");
Console.WriteLine($"Stack Trace: {ex.StackTrace}");
// If there's an inner exception, log that as well
if (ex.InnerException != null)
{
Console.WriteLine("Inner Exception:");
Console.WriteLine($"Message: {ex.InnerException.Message}");
Console.WriteLine($"Stack Trace: {ex.InnerException.StackTrace}");
}
}
}
static void ProcessIronPrintJob()
{
// Simulate a function that may throw an exception
throw new InvalidOperationException("Simulated exception for demonstration purposes.");
}
}
}
' Example of how to capture exceptions and log them
Imports System
Namespace IronPrintSupportRequest
Friend Class Program
Shared Sub Main(ByVal args() As String)
Try
' Simulate a part of your process where an exception might occur
ProcessIronPrintJob()
Catch ex As Exception
' Log the exception details
Console.WriteLine("An error occurred:")
Console.WriteLine($"Message: {ex.Message}")
Console.WriteLine($"Stack Trace: {ex.StackTrace}")
' If there's an inner exception, log that as well
If ex.InnerException IsNot Nothing Then
Console.WriteLine("Inner Exception:")
Console.WriteLine($"Message: {ex.InnerException.Message}")
Console.WriteLine($"Stack Trace: {ex.InnerException.StackTrace}")
End If
End Try
End Sub
Private Shared Sub ProcessIronPrintJob()
' Simulate a function that may throw an exception
Throw New InvalidOperationException("Simulated exception for demonstration purposes.")
End Sub
End Class
End Namespace
- Dieser Codeblock veranschaulicht, wie Ausnahmen in einer .NET-Anwendung gehandhabt werden.
- Er protokolliert die Hauptausnahme sowie alle inneren Ausnahmen in der Konsole, was für Debugging-Zwecke nützlich sein kann.

