GW2RegisterOutputMemory
Fungsi GW2RegisterOutputMemory mendaftarkan lokasi memori untuk menempatkan file terkelola yang dihasilkan oleh Glasswall ke sebuah session. Menggunakan fungsi ini mengaktifkan Manage & Protect Process Mode untuk session tersebut.
- C++
- C#
- Java
- Python
- JavaScript
Sinopsis
Untuk session session, fungsi GW2RegisterOutputMemory mendaftarkan tempat konten terkelola akan ditempatkan, dan tempat ukuran dalam byte dari konten terkelola akan ditempatkan. Pointer ke konten file terkelola akan ditempatkan dalam objek yang ditunjuk oleh outputBuffer dan ukuran dalam byte dari data terkelola akan ditempatkan dalam objek size_t yang ditunjuk oleh outputLength. Konten file terkelola akan dihapus saat session ditutup menggunakan GW2CloseSession. Menggunakan fungsi ini mengaktifkan Manage and Protect Process Mode untuk session tersebut.
#include "glasswall.core2.api.h"
int GW2RegisterOutputMemory(Session session, char **outputBuffer, size_t *outputLength);
Hasil pengembalian
Mengembalikan nilai enum GW2_RetStatus berupa integer. Angka negatif menunjukkan kegagalan.
Contoh
#include "glasswall.core2.api.h"
HANDLE session = GW2OpenSession();
char *managed_content = NULL;
size_t size = 0;
if (!session)
/* deal with error */
else
{
if (GW2RegisterOutputMemory(session, &managed_content, &size) < 0)
/* deal with error */
else
/* continue processing */
...
}
/* later */
if (GW2CloseSession(session) < 0)
/* error closing session */
else
/* managed file content has been deleted */
Sinopsis
public int RegisterOutputMemory(
int session,
out IntPtr outputBufferPtr,
ref UIntPtr outputBufferLengthPtr)
Hasil pengembalian
Mengembalikan nilai enum GW2_RetStatus berupa integer. Angka negatif menunjukkan kegagalan.
Sinopsis
import com.glasswall.core2javabridge.*;
public int GW2RegisterOutputMemory(int session) throws GlasswallException
Deskripsi
Fungsi GW2RegisterOutputMemory mendaftarkan buffer memori untuk digunakan sebagai output bagi file output untuk session yang ditentukan oleh session.
Anda perlu memanggil GetOutputBuffer setelah memanggil GW2RunSession untuk mengambil file output.
Hasil pengembalian
Fungsi GW2RegisterOutputMemory mengembalikan enumerasi GW2_RetStatus yang dikonversi menjadi int. Nilainya akan negatif jika terjadi error. 0 menunjukkan keberhasilan. Lihat API Overview/Return types untuk detailnya.
Pengecualian GlasswallException akan dilempar jika session tidak valid.
Sinopsis - Ambil Data
import com.glasswall.core2javabridge.*;
public byte[] GetOutputBuffer(int session) throws GlasswallException
Deskripsi
Fungsi GetOutputBuffer mengambil buffer output yang terkait dengan sesi yang ditentukan oleh session.
Hasil pengembalian
Fungsi GetOutputBuffer mengembalikan byte[] yang berisi file output. Nilainya akan null jika GW2RegisterOutputMemory dan GW2RunSession belum dipanggil, atau jika file tidak sesuai.
Pengecualian GlasswallException akan dilempar jika session tidak valid.
Sinopsis
Daftarkan file output untuk sesi yang diberikan. Jika output_file adalah None, file akan dikembalikan sebagai atribut 'buffer' dan 'buffer_length'.
def register_output(self, session, output_file: Optional[str] = None):
""" Register an output file for the given session. If output_file is None the file will be returned as 'buffer' and 'buffer_length' attributes.
Args:
session (int): The session integer.
output_file (Optional[str]): If specified, during run session the file will be written to output_file, otherwise the file will be written to the glasswall.GwReturnObj 'buffer' and 'buffer_length' attributes.
Returns:
gw_return_object (glasswall.GwReturnObj): A GwReturnObj instance with the attribute 'status' indicating the result of the function call. If output_file is None (memory mode), 'buffer', and 'buffer_length' are included containing the file content and file size.
"""
Hasil pengembalian
gw_return_object (glasswall.GwReturnObj): Instance GwReturnObj dengan atribut 'status' yang menunjukkan hasil pemanggilan fungsi. Jika output_file adalah None (mode memori), 'buffer' dan 'buffer_length' disertakan yang berisi konten file dan ukuran file.
Atribut status adalah nilai enum bilangan bulat GW2_RetStatus. Angka negatif menunjukkan kegagalan.
Sinopsis
Fungsi ini mendaftarkan tempat konten terkelola akan ditempatkan, dan tempat variabel ukuran konten akan diletakkan.
/**
* @param {number} session The ID of the session.
* @param {string} outputBuffer The specified output path. Must be different to the specified input file path.
* @param {string} outputLength The size of the file buffer
*/
GW2RegisterOutputMemory(
session,
outputBuffer,
outputLength)
Hasil pengembalian
Mengembalikan nilai enum GW2_RetStatus berupa integer. Angka negatif menunjukkan kegagalan.