GW2RegisterOutputMemory
Fungsi GW2RegisterOutputMemory mendaftarkan lokasi memori untuk meletakkan fail terurus yang dihasilkan oleh Glasswall kepada satu sesi. Menggunakan fungsi ini mengaktifkan Manage & Protect Process Mode untuk sesi tersebut.
- C++
- C#
- Java
- Python
- JavaScript
Sinopsis
Bagi sesi session, fungsi GW2RegisterOutputMemory mendaftarkan tempat kandungan terurus akan diletakkan, dan tempat untuk meletakkan saiz dalam bait bagi kandungan terurus tersebut. Penuding kepada kandungan fail terurus akan diletakkan dalam objek yang ditunjuk oleh outputBuffer dan saiz dalam bait bagi data terurus akan diletakkan dalam objek size_t yang ditunjuk oleh outputLength. Kandungan fail terurus akan dipadamkan apabila sesi ditutup menggunakan GW2CloseSession. Menggunakan fungsi ini mengaktifkan Manage and Protect Process Mode untuk sesi tersebut.
#include "glasswall.core2.api.h"
int GW2RegisterOutputMemory(Session session, char **outputBuffer, size_t *outputLength);
Pulangan
Mengembalikan nilai enum integer GW2_RetStatus. Nombor 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)
Pulangan
Mengembalikan nilai enum integer GW2_RetStatus. Nombor negatif menunjukkan kegagalan.
Sinopsis
import com.glasswall.core2javabridge.*;
public int GW2RegisterOutputMemory(int session) throws GlasswallException
Penerangan
Fungsi GW2RegisterOutputMemory mendaftarkan penimbal memori untuk digunakan sebagai output bagi fail output untuk sesi yang ditentukan oleh session.
Anda perlu memanggil GetOutputBuffer selepas memanggil GW2RunSession untuk mendapatkan semula fail output.
Pulangan
Fungsi GW2RegisterOutputMemory mengembalikan enumerasi GW2_RetStatus yang ditukarkan kepada int. Nilainya akan negatif jika ralat berlaku. 0 menunjukkan kejayaan. Rujuk API Overview/Return types untuk butiran lanjut.
Pengecualian GlasswallException akan dilemparkan jika session tidak sah.
Sinopsis - Dapatkan Data
import com.glasswall.core2javabridge.*;
public byte[] GetOutputBuffer(int session) throws GlasswallException
Penerangan
Fungsi GetOutputBuffer mendapatkan semula penimbal output yang dikaitkan dengan sesi yang ditentukan oleh session.
Pulangan
Fungsi GetOutputBuffer mengembalikan byte[] yang mengandungi fail output. Ini akan menjadi null jika GW2RegisterOutputMemory dan GW2RunSession belum dipanggil, atau jika fail tersebut tidak mematuhi spesifikasi.
Pengecualian GlasswallException akan dilemparkan jika session tidak sah.
Sinopsis
Daftarkan fail output untuk sesi yang diberikan. Jika output_file ialah None, fail 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.
"""
Pulangan
gw_return_object (glasswall.GwReturnObj): Instance GwReturnObj dengan atribut 'status' yang menunjukkan hasil panggilan fungsi. Jika output_file ialah None (mod memori), 'buffer' dan 'buffer_length' disertakan yang mengandungi kandungan fail dan saiz fail.
Atribut status ialah nilai enum integer GW2_RetStatus. Nombor negatif menunjukkan kegagalan.
Sinopsis
Fungsi ini mendaftarkan tempat kandungan terurus akan diletakkan, dan tempat untuk meletakkan pemboleh ubah saiz kandungan tersebut.
/**
* @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)
Pulangan
Mengembalikan nilai enum integer GW2_RetStatus. Nombor negatif menunjukkan kegagalan.