Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ GetVersionInfoForCodePage()

bool System.Diagnostics.FileVersionInfo.GetVersionInfoForCodePage ( IntPtr memIntPtr,
string codepage )
inlineprivate

Definition at line 228 of file FileVersionInfo.cs.

229 {
230 Span<char> span = stackalloc char[256];
231 IFormatProvider formatProvider = null;
232 IFormatProvider provider = formatProvider;
233 Span<char> span2 = span;
234 Span<char> initialBuffer = span2;
235 DefaultInterpolatedStringHandler handler = new DefaultInterpolatedStringHandler(31, 1, formatProvider, span2);
236 handler.AppendLiteral("\\\\StringFileInfo\\\\");
237 handler.AppendFormatted(codepage);
238 handler.AppendLiteral("\\\\CompanyName");
239 _companyName = GetFileVersionString(memIntPtr, string.Create(provider, initialBuffer, ref handler));
240 formatProvider = null;
241 IFormatProvider provider2 = formatProvider;
242 span2 = span;
243 Span<char> initialBuffer2 = span2;
244 DefaultInterpolatedStringHandler handler2 = new DefaultInterpolatedStringHandler(35, 1, formatProvider, span2);
245 handler2.AppendLiteral("\\\\StringFileInfo\\\\");
246 handler2.AppendFormatted(codepage);
247 handler2.AppendLiteral("\\\\FileDescription");
248 _fileDescription = GetFileVersionString(memIntPtr, string.Create(provider2, initialBuffer2, ref handler2));
249 formatProvider = null;
250 IFormatProvider provider3 = formatProvider;
251 span2 = span;
252 Span<char> initialBuffer3 = span2;
253 DefaultInterpolatedStringHandler handler3 = new DefaultInterpolatedStringHandler(31, 1, formatProvider, span2);
254 handler3.AppendLiteral("\\\\StringFileInfo\\\\");
255 handler3.AppendFormatted(codepage);
256 handler3.AppendLiteral("\\\\FileVersion");
257 _fileVersion = GetFileVersionString(memIntPtr, string.Create(provider3, initialBuffer3, ref handler3));
258 formatProvider = null;
259 IFormatProvider provider4 = formatProvider;
260 span2 = span;
261 Span<char> initialBuffer4 = span2;
262 DefaultInterpolatedStringHandler handler4 = new DefaultInterpolatedStringHandler(32, 1, formatProvider, span2);
263 handler4.AppendLiteral("\\\\StringFileInfo\\\\");
264 handler4.AppendFormatted(codepage);
265 handler4.AppendLiteral("\\\\InternalName");
266 _internalName = GetFileVersionString(memIntPtr, string.Create(provider4, initialBuffer4, ref handler4));
267 formatProvider = null;
268 IFormatProvider provider5 = formatProvider;
269 span2 = span;
270 Span<char> initialBuffer5 = span2;
271 DefaultInterpolatedStringHandler handler5 = new DefaultInterpolatedStringHandler(34, 1, formatProvider, span2);
272 handler5.AppendLiteral("\\\\StringFileInfo\\\\");
273 handler5.AppendFormatted(codepage);
274 handler5.AppendLiteral("\\\\LegalCopyright");
275 _legalCopyright = GetFileVersionString(memIntPtr, string.Create(provider5, initialBuffer5, ref handler5));
276 formatProvider = null;
277 IFormatProvider provider6 = formatProvider;
278 span2 = span;
279 Span<char> initialBuffer6 = span2;
280 DefaultInterpolatedStringHandler handler6 = new DefaultInterpolatedStringHandler(36, 1, formatProvider, span2);
281 handler6.AppendLiteral("\\\\StringFileInfo\\\\");
282 handler6.AppendFormatted(codepage);
283 handler6.AppendLiteral("\\\\OriginalFilename");
284 _originalFilename = GetFileVersionString(memIntPtr, string.Create(provider6, initialBuffer6, ref handler6));
285 formatProvider = null;
286 IFormatProvider provider7 = formatProvider;
287 span2 = span;
288 Span<char> initialBuffer7 = span2;
289 DefaultInterpolatedStringHandler handler7 = new DefaultInterpolatedStringHandler(31, 1, formatProvider, span2);
290 handler7.AppendLiteral("\\\\StringFileInfo\\\\");
291 handler7.AppendFormatted(codepage);
292 handler7.AppendLiteral("\\\\ProductName");
293 _productName = GetFileVersionString(memIntPtr, string.Create(provider7, initialBuffer7, ref handler7));
294 formatProvider = null;
295 IFormatProvider provider8 = formatProvider;
296 span2 = span;
297 Span<char> initialBuffer8 = span2;
298 DefaultInterpolatedStringHandler handler8 = new DefaultInterpolatedStringHandler(34, 1, formatProvider, span2);
299 handler8.AppendLiteral("\\\\StringFileInfo\\\\");
300 handler8.AppendFormatted(codepage);
301 handler8.AppendLiteral("\\\\ProductVersion");
302 _productVersion = GetFileVersionString(memIntPtr, string.Create(provider8, initialBuffer8, ref handler8));
303 formatProvider = null;
304 IFormatProvider provider9 = formatProvider;
305 span2 = span;
306 Span<char> initialBuffer9 = span2;
307 DefaultInterpolatedStringHandler handler9 = new DefaultInterpolatedStringHandler(28, 1, formatProvider, span2);
308 handler9.AppendLiteral("\\\\StringFileInfo\\\\");
309 handler9.AppendFormatted(codepage);
310 handler9.AppendLiteral("\\\\Comments");
311 _comments = GetFileVersionString(memIntPtr, string.Create(provider9, initialBuffer9, ref handler9));
312 formatProvider = null;
313 IFormatProvider provider10 = formatProvider;
314 span2 = span;
315 Span<char> initialBuffer10 = span2;
316 DefaultInterpolatedStringHandler handler10 = new DefaultInterpolatedStringHandler(35, 1, formatProvider, span2);
317 handler10.AppendLiteral("\\\\StringFileInfo\\\\");
318 handler10.AppendFormatted(codepage);
319 handler10.AppendLiteral("\\\\LegalTrademarks");
320 _legalTrademarks = GetFileVersionString(memIntPtr, string.Create(provider10, initialBuffer10, ref handler10));
321 formatProvider = null;
322 IFormatProvider provider11 = formatProvider;
323 span2 = span;
324 Span<char> initialBuffer11 = span2;
325 DefaultInterpolatedStringHandler handler11 = new DefaultInterpolatedStringHandler(32, 1, formatProvider, span2);
326 handler11.AppendLiteral("\\\\StringFileInfo\\\\");
327 handler11.AppendFormatted(codepage);
328 handler11.AppendLiteral("\\\\PrivateBuild");
329 _privateBuild = GetFileVersionString(memIntPtr, string.Create(provider11, initialBuffer11, ref handler11));
330 formatProvider = null;
331 IFormatProvider provider12 = formatProvider;
332 span2 = span;
333 Span<char> initialBuffer12 = span2;
334 DefaultInterpolatedStringHandler handler12 = new DefaultInterpolatedStringHandler(32, 1, formatProvider, span2);
335 handler12.AppendLiteral("\\\\StringFileInfo\\\\");
336 handler12.AppendFormatted(codepage);
337 handler12.AppendLiteral("\\\\SpecialBuild");
338 _specialBuild = GetFileVersionString(memIntPtr, string.Create(provider12, initialBuffer12, ref handler12));
340 global::Interop.Version.VS_FIXEDFILEINFO fixedFileInfo = GetFixedFileInfo(memIntPtr);
341 _fileMajor = (int)HIWORD(fixedFileInfo.dwFileVersionMS);
342 _fileMinor = (int)LOWORD(fixedFileInfo.dwFileVersionMS);
343 _fileBuild = (int)HIWORD(fixedFileInfo.dwFileVersionLS);
344 _filePrivate = (int)LOWORD(fixedFileInfo.dwFileVersionLS);
345 _productMajor = (int)HIWORD(fixedFileInfo.dwProductVersionMS);
346 _productMinor = (int)LOWORD(fixedFileInfo.dwProductVersionMS);
347 _productBuild = (int)HIWORD(fixedFileInfo.dwProductVersionLS);
348 _productPrivate = (int)LOWORD(fixedFileInfo.dwProductVersionLS);
349 _isDebug = (fixedFileInfo.dwFileFlags & 1) != 0;
350 _isPatched = (fixedFileInfo.dwFileFlags & 4) != 0;
351 _isPrivateBuild = (fixedFileInfo.dwFileFlags & 8) != 0;
352 _isPreRelease = (fixedFileInfo.dwFileFlags & 2) != 0;
353 _isSpecialBuild = (fixedFileInfo.dwFileFlags & 0x20) != 0;
354 return _fileVersion != string.Empty;
355 }
static string GetFileVersionString(IntPtr memPtr, string name)
static unsafe string GetFileVersionLanguage(IntPtr memPtr)
static global::Interop.Version.VS_FIXEDFILEINFO GetFixedFileInfo(IntPtr memPtr)

References System.Diagnostics.FileVersionInfo._comments, System.Diagnostics.FileVersionInfo._companyName, System.Diagnostics.FileVersionInfo._fileBuild, System.Diagnostics.FileVersionInfo._fileDescription, System.Diagnostics.FileVersionInfo._fileMajor, System.Diagnostics.FileVersionInfo._fileMinor, System.Diagnostics.FileVersionInfo._filePrivate, System.Diagnostics.FileVersionInfo._fileVersion, System.Diagnostics.FileVersionInfo._internalName, System.Diagnostics.FileVersionInfo._isDebug, System.Diagnostics.FileVersionInfo._isPatched, System.Diagnostics.FileVersionInfo._isPreRelease, System.Diagnostics.FileVersionInfo._isPrivateBuild, System.Diagnostics.FileVersionInfo._isSpecialBuild, System.Diagnostics.FileVersionInfo._language, System.Diagnostics.FileVersionInfo._legalCopyright, System.Diagnostics.FileVersionInfo._legalTrademarks, System.Diagnostics.FileVersionInfo._originalFilename, System.Diagnostics.FileVersionInfo._privateBuild, System.Diagnostics.FileVersionInfo._productBuild, System.Diagnostics.FileVersionInfo._productMajor, System.Diagnostics.FileVersionInfo._productMinor, System.Diagnostics.FileVersionInfo._productName, System.Diagnostics.FileVersionInfo._productPrivate, System.Diagnostics.FileVersionInfo._productVersion, System.Diagnostics.FileVersionInfo._specialBuild, System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted(), System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendLiteral(), System.IO.Create, System.Diagnostics.FileVersionInfo.GetFileVersionLanguage(), System.Diagnostics.FileVersionInfo.GetFileVersionString(), System.Diagnostics.FileVersionInfo.GetFixedFileInfo(), System.Diagnostics.FileVersionInfo.HIWORD(), and System.Diagnostics.FileVersionInfo.LOWORD().

Referenced by System.Diagnostics.FileVersionInfo.FileVersionInfo().